Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

ΜΥΥ105: Εισαγωγή στον Προγραμματισμό

Παρόμοιες παρουσιάσεις


Παρουσίαση με θέμα: "ΜΥΥ105: Εισαγωγή στον Προγραμματισμό"— Μεταγράφημα παρουσίασης:

1 ΜΥΥ105: Εισαγωγή στον Προγραμματισμό
Έλεγχος Ροής - Παραδείγματα

2 Δίσεκτο έτος Ένα έτος είναι δίσεκτο αν διαιρείται ακριβώς με το 400 ή διαιρείται ακριβώς με το 4 και δεν διαιρείται ακριβώς με το 100 Υπολογίστε αν ένα δοθέν έτος είναι δίσεκτο year = int(input('Enter a year: ')) if year%400 == 0: print(year, 'is a leap year') elif year%4 == 0 and year%100 != 0: else: print(year, 'is a common year')

3 ln(2) – συγκλίνον άθροισμα
Ο φυσικός λογάριθμος του 2 μπορεί να υπολογιστεί με την εξίσωση: ln(2) = 1/1 – 1/2 + 1/3 – 1/4 =… from math import log print('computes ln(2) up to a given accuracy’) error = float(input('allowed error = ')) sum=0 previous=1000 #a very large integer sign=-1 i=1 while abs(sum-previous)>error: previous=sum sign=sign*(-1) sum=sum+sign/float(i) i=i+1 print('%f %f %10.8f’ % (sum, log(2), abs(sum-log(2)))) log(): φυσικός λογάριθμος log(x,base)= log(x)/log(base)

4 Προπαίδεια του 7 Τύπωσε στοιχισμένα την προπαίδεια του 7
print ('Προπαίδεια του 7') for i in range (1,11): print('%2d x 7 = %2d'%(i,i*7)) 1 x 7 = 7 2 x 7 = 14 3 x 7 = 21 4 x 7 = 28 5 x 7 = 35 6 x 7 = 42 7 x 7 = 49 8 x 7 = 56 9 x 7 = 63 10 x 7 = 70

5 Πίνακας προπαίδειας Τύπωσε στοιχισμένα τις προπαίδειες του 1 εώς του 10 print ('Πίνακας Προπαίδειας') for i in range (1,11): for j in range (1,11): print('%2dx%d=%2d'%(i,j,i*j),end=' ') print() Τυπώνει ένα διάστημα στο τέλος αντί να αλλάξει γραμμή 1x1= 1 1x2= 2 1x3= 3 1x4= 4 1x5= 5 1x6= 6 1x7= 7 1x8= 8 1x9= 9 1x10=10 2x1= 2 2x2= 4 2x3= 6 2x4= 8 2x5=10 2x6=12 2x7=14 2x8=16 2x9=18 2x10=20 3x1= 3 3x2= 6 3x3= 9 3x4=12 3x5=15 3x6=18 3x7=21 3x8=24 3x9=27 3x10=30 4x1= 4 4x2= 8 4x3=12 4x4=16 4x5=20 4x6=24 4x7=28 4x8=32 4x9=36 4x10=40 5x1= 5 5x2=10 5x3=15 5x4=20 5x5=25 5x6=30 5x7=35 5x8=40 5x9=45 5x10=50 6x1= 6 6x2=12 6x3=18 6x4=24 6x5=30 6x6=36 6x7=42 6x8=48 6x9=54 6x10=60 7x1= 7 7x2=14 7x3=21 7x4=28 7x5=35 7x6=42 7x7=49 7x8=56 7x9=63 7x10=70 8x1= 8 8x2=16 8x3=24 8x4=32 8x5=40 8x6=48 8x7=56 8x8=64 8x9=72 8x10=80 9x1= 9 9x2=18 9x3=27 9x4=36 9x5=45 9x6=54 9x7=63 9x8=72 9x9=81 9x10=90 10x1=10 10x2=20 10x3=30 10x4=40 10x5=50 10x6=60 10x7=70 10x8=80 10x9=90 10x10=100

6 Τρίγωνο από αστεράκια Τυπώστε ένα ορθογώνιο τρίγωνο με βάση και ύψος x αστεράκια x = int(input('Input triangle\'s height: ')) for i in range (1,x+1): for j in range (1,i+1): print('*',end='') print() * ** *** **** ***** x = 5 x = int(input('Input triangle\'s height: ')) for i in range (1,x+1): print(i*'*')

7 Δέντρο από αστεράκια Τυπώστε ένα δέντρο από αστεράκια με ύψος x *
x = int(input('Input tree\'s height: ')) for i in range (1,x+1): for j in range (1,x-i+1): print(' ',end='') for j in range (1,2*i): print('*',end='') print() * *** ***** ******* ********* x = 5 x = int(input('Input tree\'s height: ')) for i in range (1,x+1): print(" "*(x-i),end='') print("*"*(2*i-1))

8 Ύψωση σε δύναμη: xy x = int(input('Input base: '))
y = int(input('Input power: ')) value = 1 for i in range(0, y): value *= x print('%d to the power of %d = %d' % (x, y, value)) x = int(input('Input base: ')) y = int(input('Input power: ')) from math import pow print('%d to the power of %d = %d' % (x, y, pow(x,y)))

9 Παραγοντικό: x! x! = 1*2*3*…*x x = int(input('Input a number: '))
f = 1 for i in range(1,x+1): f *= i print('%d! = %d' % (x,f)) x = int(input('Input a number: ')) from math import factorial print('%d! = %d' % (x, factorial(x)))

10 Υπολογισμός αθροίσματος ψηφίων ακέραιου αριθμού
x = 4579, dsum = = 25 n = int(input('Input a number: ')) dsum = 0 while n>0: dsum += n%10 n//=10 print('The sum of the number\'s digits is', dsum) Ακέραια διαίρεση n = int(input('Input a number: ')) dsum = 0 s = str(n) for i in s: dsum+=int(i) print('The sum of the number\'s digits is', dsum)

11 Υπολογισμός μέσης τιμής
a = [4,5,7,9], μ = ( )/4 s = input('Input a set of numbers separated by commas: ') a = [eval(x) for x in s.split(",")] print('The mean of your numbers is',sum(a)/len(a))

12 Υπολογισμός τυπικής απόκλισης
a = [4,5,7,9], μ = ( )/4, from math import sqrt s = input('Input a set of numbers separated by commas: ') a = [eval(x) for x in s.split(",")] print('The mean of your numbers is',sum(a)/len(a)) sumdiff = 0.0 for num in a: sumdiff += (num-sum(a)/len(a))**2 stdev = sqrt(sumdiff/len(a)) print('The standard deviation is',stdev)

13 Άσκηση: άθροισμα ζυγών
Δίνεται μια λίστα αριθμών. Βρές το άθροισμα των ζυγών στη λίστα s = input('Input a set of numbers separated by commas: ') a = [int(x) for x in s.split(",")] esum = 0 for x in a: if x%2 ==0: esum = esum + x print("The sum is: ", esum) s = input('Input a set of numbers separated by commas: ') a = [int(x) for x in s.split(",")] print("The sum is: ", sum([x for x in a if x%2==0]))

14 Άσκηση Δίνονται δύο λίστες αριθμών. Υπολόγισε μια νέα λίστα που περιέχει τα γινόμενα όλων των ζευγών από τις 2 λίστες Π.χ. L1 = [3,4,5], L2 = [1,2], L3 = [3,6,4,8,5,10] s1 = input('Input a set of numbers separated by commas: ') L1 = [int(x) for x in s1.split(",")] s2 = input('Input a set of numbers separated by commas: ') L2 = [int(x) for x in s2.split(",")] L3 = [] for x in L1: for y in L2: L3.append(x*y) print(L3)

15 Ορισμός και χρήση πινάκων
Μπορούμε να χρησιμοποιήσουμε λίστες ως πίνακες Μπορούμε να χρησιμοποιήσουμε και πλειάδες Ποια η διαφορά; μονοδιάστατος πίνακας: A = [ ] προσπέλαση του Αi με A[i] >>> A = [4,5,6,7] >>> A[2] 6 >>> B = [[1, 2, 3], [4, 5, 6], [7, 8, 9]] >>> B[2][1] 8 δισδιάστατος πίνακας: προσπέλαση του Bij με B[i][j]

16 Ορισμός και χρήση πινάκων
Η αρχικοποίηση ενός πίνακα συγκεκριμένων διαστάσεων μπορεί να γίνει με την εντολή for >>> A = [0 for i in range(10)] >>> A [0, 0, 0, 0, 0, 0, 0, 0, 0, 0] >>> M=[[0 for i in range(3)] for i in range(3)] >>> M [[0, 0, 0], [0, 0, 0], [0, 0, 0]]

17 Ορισμός και χρήση πινάκων
Αρχικοποίηση με τυχαίους αριθμούς random: πακέτο που χειρίζεται δημιουργία τυχαίων αριθμών random.randint(a,b): τυχαίος ακέραιος στο διάστημα [a,b] random.random(): τυχαίος πραγματικός στο διάστημα [0,1) >>> from random import randint >>> A = [randint(0,10) for i in range(10)] >>> A [4, 4, 6, 7, 0, 5, 9, 0, 3, 4] >>> M=[[randint(0,10) for i in range(3)] for i in range(3)] >>> M [[9, 6, 10], [7, 10, 2], [9, 3, 5]]

18 Πρόσθεση πινάκων Πρόσθεση δύο πικάνων διαστάσεων N x M N=M=2
A = [[0.0 for j in range(M)] for i in range(N)] B = [[0.0 for j in range(M)] for i in range(N)] C = [[0.0 for j in range(M)] for i in range(N)] for i in range(N): for j in range(M): A[i][j] = float(input('A[%d][%d]: ' % (i, j))) B[i][j] = float(input('B[%d][%d]: ' % (i, j))) C[i][j] = A[i][j] + B[i][j] print('C[%d][%d]:%7.2f ' % (i, j, C[i][j]), end = '') print('')

19 Πολλαπλασιασμός πινάκων N x N
A = [[0.0 for j in range(N)] for i in range(N)] B = [[0.0 for j in range(N)] for i in range(N)] C = [[0.0 for j in range(N)] for i in range(N)] for i in range(N): for j in range(N): A[i][j] = float(input('A[%d][%d]: ' % (i, j))) B[i][j] = float(input('B[%d][%d]: ' % (i, j))) for k in range(N): C[i][j] += A[i][k]*B[k][j] print('C[%d][%d]:%7.2f ' % (i, j, C[i][j]), end = '') print('')

20 Εύρεση ελάχιστου σε πίνακα
N=M=2 A = [[0.0 for j in range(N)] for i in range(N)] for i in range(N): for j in range(M): A[i][j] = float(input('A[%d][%d]: ' % (i, j))) minelem = A[0][0] if minelem > A[i][j]: minelem = A[i][j] print('The minimum element is ',minelem) Ερώτηση: Τι θα επιστρέψει το min(A); Ερώτηση: πως θα βρούμε το ελάχιστό ΚΑΙ τη θέση του;

21 Εύρεση ελάχιστου σε πίνακα
Πώς να το κάνουμε με list comprehension? N=M=2 A = [[float(input('A[%d][%d]: ' % (i, j))) for j in range(N)] for i in range(N)] minelem = min([min(x) for x in A]) print('The minimum element is ', minelem)

22 Υπολογισμός ανάστροφου πίνακα
N=2 M=3 A = [[0.0 for j in range(M)] for i in range(N)] invA = [[0.0 for j in range(N)] for i in range(M)] for i in range(N): for j in range(M): A[i][j] = float(input('A[%d][%d]: ' % (i, j))) invA[j][i] = A[i][j] for i in range(M): for j in range(N): print('invA[%d][%d]:%7.2f ' % (i, j, invA[i][j]), end = '') print('')

23 Άσκηση Όρισε ένα άνω τριγωνικό πίνακα, με τα στοιχεία από τη διαγώνιο και πάνω =1 M=[[0 for i in range(3)] for j in range(3)] for i in range(3): for j in range(3): if i<=j: M[i][j]=1 for row in M: print(row)


Κατέβασμα ppt "ΜΥΥ105: Εισαγωγή στον Προγραμματισμό"

Παρόμοιες παρουσιάσεις


Διαφημίσεις Google