Ruby/Duotą centų kiekį išreikšti mažiausiu monetų skaičiumi: Skirtumas tarp puslapio versijų
< Ruby
Ištrintas turinys Pridėtas turinys
94 eilutė: | 94 eilutė: | ||
ct1, ct2 = suma % 2, suma / 2 |
ct1, ct2 = suma % 2, suma / 2 |
||
puts "#{pradine_suma} ct = " |
puts "#{pradine_suma} ct = " |
||
if ct50 > 0 # dažniausiai įprastas |
if ct50 > 0 # dažniausiai įprastas if variantas |
||
puts "#{ct50} po 50 ct" # naudojamas tada, kai reikia įvykdyti ne vieną sakinį |
puts "#{ct50} po 50 ct" # naudojamas tada, kai reikia įvykdyti ne vieną sakinį |
||
end # taip, kaip paskalyje if ... then begin ... end |
end # taip, kaip paskalyje if ... then begin ... end |
22:28, 9 gruodžio 2005 versija
Programa, duotą centų kiekį, išreiškianti mažiausiu monetų skaičiumi.
Paprastas variantas
Paskalio variantas
program centai; var suma, { pinigų suma } ct50, ct20, ct10, ct5, ct2, ct1: integer; { monetos } begin readln(suma); ct50 := suma div 50; suma := suma mod 50; ct20 := suma div 20; suma := suma mod 20; ct10 := suma div 10; suma := suma mod 10; ct5 := suma div 5; suma := suma mod 5; ct2 := suma div 2; ct1 := suma mod 2; writeln(' Monetu po'); writeln('50 ct: ', ct50); writeln('20 ct: ', ct20); writeln('10 ct: ', ct10); writeln(' 5 ct: ', ct5); writeln(' 2 ct: ', ct2); writeln(' 1 ct: ', ct1) end.
Ruby variantas
suma = gets.to_i suma, ct50 = suma % 50, suma / 50 # Ruby kalboje galima daryti tokius priskyrimus suma, ct20 = suma % 20, suma / 20 # dviejų kintamųjų sukeitimas Ruby kalboje suma, ct10 = suma % 10, suma / 10 # užrašomas paprastai a, b = b, a suma, ct5 = suma % 5, suma / 5 ct1, ct2 = suma % 2, suma / 2 puts ' Monetu po' puts "50 ct: #{ct50}" # Eilutėse su kabutėmis(") viduje puts "20 ct: #{ct20}" # galima įterpti kintamuosius puts "10 ct: #{ct10}" # ar netgi reiškinius puts " 5 ct: #{ct5}" # pvz: puts "a + b = #{a + b}" puts " 2 ct: #{ct2}" puts " 1 ct: #{ct1}"
Protingesnis variantas
Rezultatuose nerodo tų nominalų monetų, kurių kiekis yra nulis.
Paskalio variantas
program centai; var pradine_suma, suma, { pinigų suma } ct50, ct20, ct10, ct5, ct2, ct1: integer; { monetos } begin readln(pradine_suma); suma := pradine_suma; ct50 := suma div 50; suma := suma mod 50; ct20 := suma div 20; suma := suma mod 20; ct10 := suma div 10; suma := suma mod 10; ct5 := suma div 5; suma := suma mod 5; ct2 := suma div 2; ct1 := suma mod 2; writeln(pradine_suma, ' ct = '); if ct50 > 0 then writeln(ct50, ' po 50 ct'); if ct20 > 0 then writeln(ct20, ' po 20 ct'); if ct10 > 0 then writeln(ct10, ' po 10 ct'); if ct5 > 0 then writeln(ct5, ' po 5 ct'); if ct2 > 0 then writeln(ct2, ' po 2 ct'); if ct1 > 0 then writeln(ct1, ' po 1 ct'); end.
Ruby variantas
pradine_suma = gets.to_i suma = pradine_suma suma, ct50 = suma % 50, suma / 50 suma, ct20 = suma % 20, suma / 20 suma, ct10 = suma % 10, suma / 10 suma, ct5 = suma % 5, suma / 5 ct1, ct2 = suma % 2, suma / 2 puts "#{pradine_suma} ct = " puts "#{ct50} po 50 ct" if ct50 puts "#{ct20} po 20 ct" if ct20 puts "#{ct10} po 10 ct" if ct10 puts "#{ct5} po 5 ct" if ct5 puts "#{ct2} po 2 ct" if ct2 puts "#{ct1} po 1 ct" if ct1
Įmanomi ir kiti if panaudojimo variantai:
pradine_suma = gets.to_i suma = pradine_suma suma, ct50 = suma % 50, suma / 50 suma, ct20 = suma % 20, suma / 20 suma, ct10 = suma % 10, suma / 10 suma, ct5 = suma % 5, suma / 5 ct1, ct2 = suma % 2, suma / 2 puts "#{pradine_suma} ct = " if ct50 > 0 # dažniausiai įprastas if variantas puts "#{ct50} po 50 ct" # naudojamas tada, kai reikia įvykdyti ne vieną sakinį end # taip, kaip paskalyje if ... then begin ... end if ct20 # vykdys tada, kai ct20 nelygus nuliui puts "#{ct20} po 20 ct" end if ct10 then # norintys gali naudoti ir then puts "#{ct10} po 10 ct" end if ct5 then puts "#{ct5} po 5 ct"; end # galime rašyti vienoje eilutėje, tačiau tada reikia ; puts "#{ct2} po 2 ct" if ct2 # sąlygą galima rašyti gale puts "#{ct1} po 1 ct" if ct1