Μάθημα : Αρχές Προγραμματισμού Υπολογιστών

Κωδικός : S24152

S24152  -  ΜΑΡΙΑ ΦΑΝΑΡΙΩΤΗ

Ασκήσεις στις Συναρτήσεις

Ερώτηση 1 (Ελεύθερου Κειμένου — 0 βαθμοί) 

Άσκηση 1

 

def  add(arg1,arg2) :
     result=arg1+arg2
     return result


def  times3(arg) :
     ginomeno=3*arg
     return ginomeno

 

Τι θα επιστρέψει στο κυρίως πρόγραμμα κάθε μια από τις πιο κάτω κλήσεις;

α) add(10,18)
β) add(10,18.5)
γ) times3(10)
δ) times3(2.5)
ε) times3('python') 
στ) times3 (times3('9'))
ζ) times3(add(add('ab','ba'),' ') 

Ερώτηση 2 (Ελεύθερου Κειμένου — 0 βαθμοί) 

Άσκηση 2

 

Τι θα εμφανίσει στην οθόνη το πιο κάτω πρόγραμμα;

 

def  increment(a,b) :
     a=a+1
     b=b+1
     return a+b

z=1
w=2
q=increment(z,w)
print z,w,q

Ερώτηση 3 (Ελεύθερου Κειμένου — 0 βαθμοί) 

Άσκηση 3

 

Δίνονται οι πιο κάτω συναρτήσεις:

Η printPython3() εμφανίζει τη λέξη Python 3 φορές. Η printPython9()εμφανίζει τη λέξη Python 9 φορές.

def  printPython3() :
     print 'Python'
     print 'Python'
     print 'Python'

def  printPython9() :
     print 'Python'
     print 'Python'
     print 'Python'
     print 'Python'
     print 'Python'
     print 'Python'
     print 'Python'
     print 'Python'
     print 'Python'

 

α) Πως μπορώ να γράψω τη συνάρτηση printPython9() χρησιμοποιώντας λιγότερες εντολές κάνοντας χρήση της printPython3();

β) Πως μπορώ να γράψω τη συνάρτηση printPython21() η οποία εμφανίζει 21 φορές τη λέξη Python με αποκλειστική χρήση της printPython3() & printPython9();

γ) Συμπληρώστε κατάλληλα τον ορισμό της πιο κάτω συνάρτησης ώστε να εμφανίζει τη λέξη Python,  Ν φορές.

 

def  printPython ( ___ ) :
      
for  i  in  range (N)  :
             
print 'Python'

 

 

 

Ερώτηση 4 (Ελεύθερου Κειμένου — 0 βαθμοί) 

Άσκηση 4

 

Τι θα εμφανίσει στην οθόνη το πιο κάτω πρόγραμμα;

 

def print_1(t2):
t1 = t2+10
print t1

 

t1 = 5
print_1(t1)

 

Ερώτηση 5 (Ελεύθερου Κειμένου — 0 βαθμοί) 

Άσκηση 5

 

Τι θα εμφανίσει στην οθόνη το πιο κάτω πρόγραμμα;

 

def print_1(t2):
      print t2
      t2 = t2+10
      print t2

 

t1 = 5
print_1(t1)
print t1

 

Ερώτηση 6 (Ελεύθερου Κειμένου — 0 βαθμοί) 

Άσκηση 6

 

Να εντοπίσετε στο παρακάτω πρόγραμμα τα τμήματα κώδικα που πρέπει να γίνουν συναρτήσεις και να το ξαναγράψετε, έτσι ώστε να αποφευχθεί η επανάληψή τους και να μειωθεί ο όγκος του.

 

sum1 = 0

for i in range(100):
      sum1 = sum1 + i
print sum1

 

sum2 = 0

for j in range(100):
      sum2 = sum2 + j
print sum2 + sum1

 

sum3 = 0

for k in range(sum1):
      sum3 = sum3 + k

print sum3 + sum2 + sum1

Ερώτηση 7 (Ελεύθερου Κειμένου — 0 βαθμοί) 

Άσκηση 7

 

Τι έξοδο θα δώσει ο επόμενος κώδικας;

 

def f():
    name='white'
    print 'Μέσα στη συνάρτηση',name

name='black'
print 'Έξω από τη συνάρτηση',name
f()

Ερώτηση 8 (Ελεύθερου Κειμένου — 0 βαθμοί) 

Άσκηση 8

 

Τι θα έξοδο θα δώσει ο επόμενος κώδικας;

 

def f():
     print 'Μέσα στη συνάρτηση',name

name='black'
print 'Έξω από τη συνάρτηση',name
f()

Ερώτηση 9 (Ελεύθερου Κειμένου — 0 βαθμοί) 

Άσκηση 9

Τι έξοδο θα δώσει ο επόμενος κώδικας;


def   f():
    global name
    name='white'
    print 'Μέσα στη συνάρτηση',name

name='black'
print 'Έξω από τη συνάρτηση',name
f()
print 'Έξω από τη συνάρτηση',name

Ερώτηση 10 (Ελεύθερου Κειμένου — 0 βαθμοί) 

Άσκηση 10

Τι έξοδο θα δώσει ο επόμενος κώδικας;

 

def func():
       global x
   
   print 'Το x είναι',x
       x=2
       print 'Το καθολικό x άλλαξε σε',x

 

x=50
func()
print 'Η τιμή του x είναι',x

Ερώτηση 11 (Ελεύθερου Κειμένου — 0 βαθμοί) 

Άσκηση 11

Τι έξοδο θα δώσει ο επόμενος κώδικας;

 

def func1():
       myGlobal=42


def func2():
       print myGlobal


myGlobal
=5
func1()
func2()

Ερώτηση 12 (Ελεύθερου Κειμένου — 0 βαθμοί) 

Άσκηση 12

Tι έξοδο θα δώσει ο επόμενος κώδικας;


def func1():
      global myGlobal
      myGlobal=42

def func2():
      print myGlobal

 

myGlobal=5
func1()
func2()