Programma del corso Introduzione agli algoritmi Rappresentazione delle Informazioni Reti di Calcolatori Architettura del calcolatore Elementi di Programmazione
Esempi di algoritmi e programmi
Conversione lire in euro Leggi da input l importo in lire Calcola il corrispettivo in Euro Dai in output il risultato
Conversione lire in Euro START Leggi Lire Euro = Lire/1936,27 Stampa Euro STOP
Calcolo dell area di un rettangolo Leggi da input l altezza Leggi da input la base Calcola l area Dai in output il risultato
Calcola l area di un rettangolo START Leggi Altezza Leggi Base Area = Base*Altezza Stampa Area STOP
Scambio dei valori di due variabili Conserva X in una variabile temporanea Aux Assegna il valore di Y ad X Assegna il valore di Aux a Y
Scambio dei valori di due variabili Aux = X X = Y Y = Aux
Massimo tra due numeri Leggi X Leggi Y Se X > Y Stampa X Altrimenti Stampa Y
Massimo tra due numeri START Leggi X Leggi Y X > Y F Stampa Y V Stampa X STOP
Pari o dispari Leggi un numero Dividi il numero per 2 Se il resto = 0 Stampa N è pari Altrimenti Stampa N è dispari
Pari o dispari START R = 0 V Leggi N F Stampa Pari R = N modulo 2 Stampa Dispari STOP
Ricerca del massimo tra tre numeri Leggi tre numeri N1, N2, N3 Poni il massimo provvisorio MAX = N1 MAX < N2? SI --- N2 è il nuovo massimo NO --- CONTINUA MAX < N3? SI --- N3 è il nuovo massimo NO --- CONTINUA Stampa MAX
Ricerca del massimo tra tre numeri START Leggi N1, N2, N3 V MAX < N3 F MAX = N3 MAX = N1 Stampa MAX MAX < N2 V MAX = N2 STOP F
Ricerca del massimo tra N numeri positivi START I < N NO Leggi N MAX = 0 SI Leggi X Stampa MAX STOP I = 0 MAX < X MAX = X I = I+1
Somma di K numeri START I < K NO Leggi K S = 0 I = 0 SI Leggi N S = S+N I = I+1 Stampa S STOP
Prodotto di 2 numeri col metodo delle addizioni successive START N = 0 SI Leggi M,N PROD = 0 NO PROD = PROD+M Stampa PROD N = N-1 STOP
Media tra N numeri START I < N NO Leggi N S = 0 I = 0 SI Leggi X S = S+X I = I+1 MEDIA = S/N Stampa MEDIA STOP
Stabilire quanti di N numeri sono maggiori di 5 START I < N NO Leggi N CONT = 0 I = 0 SI Leggi X X > 5 CONT = CONT+1 Stampa CONT STOP I = I+1
Esempio START Leggi X P = X * 5 Stampa P STOP Sub main() Dim X,P as Integer X = InputBox( Dammi X ) P = X*5 PRINT P End Sub
Area di un rettangolo Sub main() Dim base, altezza, area as Integer base = InputBox( Inserisci la base: ) altezza = InputBox( Inserisci l altezza: ) area = base*altezza Print area End Sub
Dire se un triangolo è equilatero, isoscele o scaleno Sub Main() Dim A, B, C As Integer A = InputBox("Inserisci il lato A") B = InputBox("Inserisci il lato B") C = InputBox("Inserisci il lato C") If A = B And B = C Then Print "Triangolo Equilatero" ElseIf A = B Or B = C Or C = A Then Print "Triangolo Isoscele Else Print "Triangolo Scaleno End If End Sub
Trasformare la propria media espressa in trentesimi in centodecimi Sub Main() Dim A As Integer A = InputBox("Dammi la tua media") Print "La tua media espressa in centodecimi è"; A / 3*11 End Sub
Calcolare la media dei propri voti Sub Main() Dim Voto, NumeroVoti, Somma as Integer Dim media as double Print Inserisci i tuoi voti Somma = 0 NumeroVoti = 0 Voto = InputBox ( Inserisci un voto (-1 per finire) ) While Voto <> -1 NumeroVoti = NumeroVoti + 1 Somma = Somma + Voto Voto = InputBox ( Inserisci un voto (-1 per finire) ) Wend Media = Somma/NumeroVoti MsgBox La tua media è, media End Sub
Contare per quanti giorni la temperatura è stata superiore ai 30 gradi Sub Main() Dim Conta, Temperatura As Integer Conta = 0 MsgBox "Inserisci una serie di temperature quotidiane (terminata da -400) Temperatura = InputBox("Dammi un valore di temperatura") While Temperatura <> -400 If Temperatura > 30 Then Conta = Conta + 1 End If Temperatura = InputBox("Dammi un valore di temperatura") Wend MsgBox "Il numero totale di giorni afosi è & Conta End Sub
Calcolare se un certo anno sarà bisestile Sub Main() Dim Anno As Integer Anno = InputBox("Inserisci l'anno") If Anno Mod 4 = 0 Then If Anno Mod 100 = 0 And Anno Mod 400 <> 0 Then MsgBox "Anno Non Bisestile" Else MsgBox "Anno bisestile" End If Else MsgBox "Anno Non bisestile" End If End Sub
Come NON sommare 100 numeri (Trovare gli errori ) Conta = 0 While Conta < 100 Somma = 0 Num = InputBox( ) Somma = Somma + Num Conta = Conta + 1 Wend MsgBox Somma Conta = 0 Somma = 0 While Conta < 100 Num = InputBox( ) Somma = Somma + Num Wend MsgBox Somma Conta = 0 Somma = 0 While Conta < 100 Num = InputBox( ) Conta = Conta + 1 Wend MsgBox Somma (a) (b) (c)