[Explicaţie: pregătirea unui scurt curs de Small Basic pentru copii a făcut să nu mă pot concentra să scriu pentru CNet.ro. Pentru a recupera, voi publica din programele pregătite pentru respectivul curs, cu speranţa că vor folosi cuiva – chiar dacă Small Basic nu e atât de popular.] Vom vedea în continuare câteva programe banale, bune pentru începători, adică pentru cei care acum “buchisesc” Small Basic. Vă amintesc că Small Basic e un limbaj de programare gândit special pentru copii şi începători.
1. În funcţie de ora din zi să se salute cu "Bună dimineaţa!", "Bună ziua!" sau "Bună seara!" Online aici.
ora=Clock.Hour If (ora<10) Then TextWindow.WriteLine("Bună dimineaţa!") Else If (ora<18) Then TextWindow.WriteLine("Bună ziua!") Else TextWindow.WriteLine("Bună seara!") EndIf EndIf
2. Se introduc mai multe numere, încheierea introducerii fiind semnalată cu zero. Calculaţi media lor aritmetică. Online aici.
suma=0 cate=0 citire: nr=TextWindow.ReadNumber() If (nr<>0) Then suma=suma+nr cate=cate+1 Goto citire EndIf media=suma/cate TextWindow.WriteLine("Media artimetică este: "+media)
3. Se dau două numere şi se indică o operaţie (1: adunare; 2: scădere; 3: împărţire; 4: înmulţire; 5: putere; şi 0 ieşire). Să se facă operaţia şi să se reia totul. Online aici.
inceput: TextWindow.Write("Indicati primul numar: ") a=TextWindow.ReadNumber() TextWindow.Write("Indicati al doilea numar: ") b=TextWindow.ReadNumber() TextWindow.WriteLine("Putem efectua urmatoarele operatii:") TextWindow.WriteLine("1. Adunare") TextWindow.WriteLine("2. Scadere") TextWindow.WriteLine("3. Inmultire") TextWindow.WriteLine("4. Impartire") TextWindow.WriteLine("5. Putere") TextWindow.WriteLine("0. Iesire") TextWindow.Write("Alegeti operatia: ") operatia=TextWindow.ReadNumber() If operatia=0 Then Goto final EndIf If operatia=1 Then TextWindow.WriteLine("Ati ales adunare: "+a+"+"+b+"="+(a+b)) EndIf If operatia=2 Then TextWindow.WriteLine("Ati ales scadere: "+a+"-"+b+"="+(a-b)) EndIf If operatia=3 Then TextWindow.WriteLine("Ati ales inmultire: "+a+"*"+b+"="+(a*b)) EndIf If operatia=4 Then TextWindow.WriteLine("Ati ales impartire : "+a+"/"+b+"="+(a/b)) EndIf If operatia=5 Then TextWindow.WriteLine("Ati ales putere: "+a+" la puterea "+b+"="+Math.Power(a,b)) EndIf Goto inceput final:
4. Să se scrie ziua de azi în două forme, pe două rânduri: 03-04-2012 şi 3 aprilie 2012. Online aici.
ziua=Clock.Day If (ziua<10) Then TextWindow.Write(0) EndIf TextWindow.Write(ziua+"-") luna=Clock.Month If (luna<10) Then TextWindow.Write(0) EndIf TextWindow.Write(luna+"-") anul=Clock.Year TextWindow.WriteLine(anul) TextWindow.Write(ziua+" ") If (luna=1) Then TextWindow.Write("ianuarie") EndIf If (luna=2) Then TextWindow.Write("februarie") EndIf If (luna=3) Then TextWindow.Write("martie") EndIf If (luna=4) Then TextWindow.Write("aprilie") EndIf If (luna=5) Then TextWindow.Write("mai") EndIf If (luna=6) Then TextWindow.Write("iunie") EndIf If (luna=7) Then TextWindow.Write("iulie") EndIf If (luna=8) Then TextWindow.Write("august") EndIf If (luna=9) Then TextWindow.Write("septembrie") EndIf If (luna=10) Then TextWindow.Write("octombrie") EndIf If (luna=11) Then TextWindow.Write("noiembrie") EndIf If (luna=12) Then TextWindow.Write("decembrie") EndIf TextWindow.WriteLine(" "+anul)
5. Să se verifice dacă un număr este prim, afişându-se divizorii altfel.
start: TextWindow.Write("Introduceti un numar si o sa va spunem daca este prim sau nu: ") nr=TextWindow.ReadNumber() sedivide=0 For i=2 To Math.Ceiling(nr/2) If Math.Remainder(nr,i)=0 Then sedivide=1 TextWindow.Write(" ("+i+") ") EndIf EndFor If sedivide=0 Then TextWindow.WriteLine("Este prim!") Else TextWindow.WriteLine("Nu este prim!") EndIf TextWindow.Pause() TextWindow.Clear() Goto start
0 comentarii