Πανελλαδικές 2009-2022-ΘΕΜΑ Β

You got 27 of 42 possible points.
Your score: 64%
Question 1

Δίνεται το παρακάτω τμήμα προγράμματος Python:

x,y=input('δώσε τιμές')

if x < y :

        z = x

else:

        z = x

while z != 0 :

        z = z % y

        x = y

        y = z

Επίσης δίνεται το παρακάτω υπόδειγμα - πίνακας (πίνακας τιμών), όπου έχει συμπληρωθεί η εκτέλεση της πρώτης εντολής του προγράμματος.

x y z
185 50 ...
... ... ...
... ... ...

Συμπληρώστε τον παραπάνω πίνακα για x = 185 και y = 50 . Να προσθέσετε στον πίνακα όσες γραμμές είναι απαραίτητες

Για το quiz, πληκτρολογήστε όλες τις τριάδες τιμών με κόμμα χωρίς κενά. Η πρώτη τιμή που θα πληκτρολογήσετε είναι η z που λείπει και μετά όλες οι υπόλοιπες με κόμμα.

(Επαναληπτικές Πανελλαδικές 2017) 

Score: 0 of 5
Your answerScoreCorrect answer
35,50,35,0,35,0050,50,35,35,35,15,15,15,5,5,5,0,0
Eντολες x y z

x,y=input()

και θα εκτελεστί η else: z=y

185 50 50
1η επανάληψη της while 50 35 35
2η επανάληψη της while 35 15 15
3η επανάληψη της while 15 5 5
4η επανάληψη της while 5 0 0

 

Question 2

Δίνεται το παρακάτω τμήμα προγράμματος Python:

α = [10, 20, 30, 40, 50]

a.insert( 2, 10)

print a

a.pop( )

print a

(Επαναληπτικές Πανελλαδικές 2018)

Τι εμφανίζει; Πληκτρολογήστε όπως ακριβώς εμφανίζεται διαχωρίζοντας με κόμμα, χωρίς κενά. Όπου χρειαστεί βάλτε αγκύλες

Score: 5 of 5
Your answerScoreCorrect answer
[10,20,10,30,40,50],[10,20,10,30,40]5[10,20,10,30,40,50],[10,20,10,30,40]

α = [10, 20, 30, 40, 50]

a.insert( 2, 10) # άρα τοποθετείται στη θέση 2 ο αριθμός 10

print a              #άρα [10, 20, 10, 30, 40, 50]

a.pop( )          #άρα διαγραφή του τελευταίου στοιχείου

print a           # άρα [10, 20, 10, 30, 40]

Question 3

Δίνεται το παρακάτω πρόγραμμα:(Πανελλαδικές 2013)

k=32

m=10

while k>=8:

        k=k//2

        m+=k

        print k, m

Συμπληρώστε τον παρακάτω πίνακα με τις τιμές των μεταβλητών k, m που εμφανίζονται σε κάθε επανάληψη

  k m
ΑΡΧΙΚΕΣ ΤΙΜΕΣ 32 10
1η επανάληψη    
2η επανάληψη    
3η επανάληψη    

Πληκτρολογήστε τις τιμές των k,m αντίτοιχα ως ζευγάρια τιμών με κόμμα χωρίς κενά (6 τιμές)  

Score: 5 of 5
Your answerScoreCorrect answer
16,26,8,34,4,38516,26,8,34,4,38

 

  k m
ΑΡΧΙΚΕΣ ΤΙΜΕΣ 32 10
1η επανάληψη 16 26
2η επανάληψη 8 34
3η επανάληψη 4 38

 

Question 4

Μετατρέψτε την παρακάτω  for σε while, ώστε να εμφανίζει το ίδιο αποτέλεσμα (Τροποποιημένο Πανελλαδικές 2017-Ζητούσε όχι Multiple choice αλλά να ξαναγραφτεί)

s = 0

for i in range ( 1 , 10 , 2):

    s = s + i

    print s

print s
 

Score: 1 of 1
Your answerChoiceScoreCorrect answer

s = 0

i = 2

while i < 1 :

    s = s + i

    print s

    i = i +10

print s

0

s = 0

i = 10

while i < 1 :

    s = s + i

    print s

    i = i +2

print s

0
Selected

s = 0

i = 1

while i < 10 :

    s = s + i

    print s

    i = i +2

print s

1
Should have chosen

s = 0

i = 1

while i < 10 :

    print s

    s = s + i

    i = i +2

   

print s

0
Question 5

Δίνεται το παρακάτω τμήμα προγράμματος: (Πανελλαδικές 2012)

x=10

a=20

while x>0:

        if a % 2==0:

                a+=3

        else:

                a-=1

        x=x//2

       print x,a

b=x+a

g=2*a

print b,g

Να συμπλρώσετε τον  παρακάτω πίνακα τιμών, με τις τιμές των μεταβλητών x, a που εμφανιζονται σε κάθε επανάληψη

  x a
ΑΡΧΙΚΕΣ ΤΙΜΕΣ 10 20
1η επανάληψη    
2η επανάληψη    
3η επανάληψη    
4η επανάληψη    

Πληκτρολογήστε τις τιμές x και a με κόμμα χωρίς κενά. Συνολικά 4 ζευγάρια τιμών, δηλαδή 8 τιμές όλες με κόμμα
 

Score: 5 of 5
Your answerScoreCorrect answer
5,23,2,22,1,25,0,2455,23,2,22,1,25,0,24
  x a
ΑΡΧΙΚΕΣ ΤΙΜΕΣ 10 20
1η επανάληψη 5 23
2η επανάληψη 2 22
3η επανάληψη 1 25
4η επανάληψη 0 24

Αν θες να δες περισσότερα για τα  // και  % εδώ

Question 6

Να γράψετε στο τετράδιό σας το παρακάτω τμήμα προγράμματος, χρησιμοποιώντας την εντολή απανάληψης for αντί της εντολής επανάληψης while έτσι ώστε να εμφανίζει το ίδιο αποτέλεσμα (Υπολειπόμενες Πανελλαδικές 2017)

i=1

while i < = 100:

        print i

        i = i + 1

Για το quiz, προτείνεται να γράψετε μόνοι σας τον κώδικα και μετά να επιλέξετε το σωστό (για πρακτικούς λόγους χρήσης του quiz)

Score: 1 of 1
Your answerChoiceScoreCorrect answer

for i in range(1,100):

        print i

 

0
Selected

for i in range(1,101):

        print i
 

1
Should have chosen

for i in range(100):

        print i

0

for i in range(101):

        print i

0
Question 7

Δίνεται το παρακάτω τμήμα του προγράμματος Python: (Επαναληπτικές Πανελλαδικές 2019)

i = 0

p = 1

prod = 1

while i < 8:

        if   i < = 5:

                p = 2

        else:

                p = 1

        prod = prod * p

        i = i + 2   

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

  i prod p
Αρχικά 0 1 1
1η επανάληψη ... ... 2
... ... ... ...

Για το quiz γράψτε τις δύο τιμές που λείπουν από την 1η επανάληψη, συνεχίζοντας με τις υπόλοιπες τριάδες τιμών. Διαχωρίστε τες με κόμμα χωρίς κενά

 

Score: 0 of 5
Your answerScoreCorrect answer
2,2,4,4,26,8,2,8,8,102,2,4,4,2,6,8,2,8,8,1
  i prod p
Αρχικά 0 1 1
1η επανάληψη 2 2 2
2η επανάληψη 4 4 2
3η επανάληψη 6 8 2
4η επανάληψη 8 8 1
Question 8

Δίνεται το παρακάτω τμήμα προγράμματος Python:( Επαναληπτικές Πανελλαδικές 2018)

def   print_1(t2):

        t2 = t2 + 10

        print t2

        t2 = t2 / 5

        return t2

t1 = 5

print  print_1(t1)

print t1

Πληκτρολογήστε τι θα εμφανίσει. Διαχωρίστε με κόμμα χωρίς κενά

Score: 5 of 5
Your answerScoreCorrect answer
15,3,5515,3,5

def   print_1(t2):     #  Δέχεται την τιμή 5 από το πρόγραμμα. Άρα t2=5

        t2 = t2 + 10    #  t2=5+10 άρα t2=15

        print t2            #  15   Πρώτη τιμή που εμφανίζεται

        t2 = t2 / 5       # t2 = 15 / 5 άρα t2 = 3

        return t2        # Eπιστρέφει στο πρόγραμμα την τιμή 3

t1 = 5

print  print_1(t1)       # Εμφανίζει την τιμή που επέστρεψε η συνάρτηση. Άρα

                                  # 3    Δεύτερη τιμή που εμφανίζεται

print t1                      # 5    Τρίτη τιμή που εμφανίζεται

Question 9

Δίνεται η παρακάτω λίστα Α με 6 αριθμούς. Να εκτελέσετε τον αλγόριθμο ταξινόμησης ευθείας ανταλλαγής για την ταξινόμηση των αριθμών σε αύξουσα σειρά, συμπληρώνοντας παράλληλα τα κενά στον παρακάτω πίνακα, ώστε να φαίνονται τα στοιχεία της λίστας αμέσως μετά από κάθε πέρασμα του αλγορίθμου.(Πανελλαδικές 2019)

Α 55 34  5   2   2   1 
1ο πέρασμα            
2ο πέρασμα            
3ο πέρασμα            
4ο πέρασμα            
5ο πέρασμα            

Γράψτε τον αλγόριθμο στο τετράδιό σας και πληκτρολογήστε τους αριθμούς κάθε περάσματος (έξι αριθμοί σε κάθε πέρασμα) διαχωρίζοντάς τους με κόμμα (τριάντα αριθμοί)

Score: 5 of 5
Your answerScoreCorrect answer
1,55,34,5,2,2,1,2,55,34,5,2,1,2,2,55,34,5,1,2,2,5,55,34,1,2,2,5,34,5551,55,34,5,2,2,1,2,55,34,5,2,1,2,2,55,34,5,1,2,2,5,55,34,1,2,2,5,34,55

Σε κάθε πέρασμα τελειώνει η εσωτερική επανάληψη της ταξινόμησης και προωθείται το μικρότερο στοιχείο αφού έχουμε αύξουσα ταξινόμηση

Ο πίνακας σε κάθε πέρασμα θα είναι:

Α 55 34  5   2   2   1 
1ο πέρασμα 1 55 34 5 2 2
2ο πέρασμα 1 2 55 34 5 2
3ο πέρασμα 1 2 2 55 34 5
4ο πέρασμα 1 2 2 5 55 34
5ο πέρασμα 1 2 2 5 34 55

 

Question 10

Στο τμήμα προγράμματος υπάρχουν υπογραμμισμένα κενά τα οποία έχουν αριθμηθεί. Να πληκτρολογήσετε αυτό που πρέπει να συμπληρωθεί ώστε να υλοποιείται σωστά η αύξουσα ταξινόμηση αυτό που αντιστοιχεί στα κενά 1, 2, 3, 4 και 5. Πληκτρολογήστε Λατινικούς χαρακτήρες διαχωρίζοντας τους με κόμμα, χωρίς κενά. (Πανελλαδικές 2017 Τροποποίηση στο ότι δεν έγγραφε τις είδους ταξινόμηση)

Ν= len (lista)

for i in range( 1,    (1)   ,    (2)      ) :

        for j in range( N - 1,    (3)    , -1 ):

            if  lista[    (4)       (5)      lista [ j - 1]:

                lista [ j ], lista [j - 1]= lista [ j - 1], lista [ j ]

 

Score: 0 of 5
Your answerScoreCorrect answer
N,1,i,j,>0N,1,i-1,j,<

Ν= len (lista)

for i in range( 1, N, 1  ) :

        for j in range( N - 1, i-1 , -1 ):

            if  lista[ j <   lista [ j - 1]:

                lista [ j ], lista [j - 1]= lista [ j - 1], lista [ j ]

ΠΡΟΣΟΧΗ: Επειδή η εξωτερική for ξεκινά από το 1, στην εμφωλευμένη for ( αν δεν αλλάξουμε και το έως i ) το j θα λάβει έως το 1 άρα έως ΚΑΙ το 2, άρα στο τέλος θα ελέγξει το στοιχείο lista[2] με το lista[1] και εκεί σταματά

Άρα για να ελεγχθεί και το 1ο στοιχείο, πρέπει for j in range(N-1, i-1, -1)