Chapitre II : Premiers Programmes
1. Expressions
Cas 1a=true
b=false
c=false
Cas 2a=false
b=true
c=true
Cas 3a=true
b=false
c=true
d=true
Cas 4a=true
b=false
c=false
Cas 5a=12
b=11
Cas 62
3
4
5
6
7
8
9
Cas 7a=false
b=7
i=4
Cas 8pierre
paul
jacques
pierre
paul
jacques
pierre
paul
2. Méthodes
Cas 1def calcul( operateur, val1, val2 )
case operateur
when "+"
val1+val2
when "-"
val1-val2
when "*"
val1*val2
when "/"
if ( val2 == 0 )
throw :erreur
else
val1/val2
end
end
end
avecErreur = true
catch( :erreur ) do
for op in ["*","+", "/", "-" ]
puts "20#{op}10=#{calcul( op, 20, 10 )}"
end
puts "20/0=#{calcul( "/", 20, 0 )}"
avecErreur = false
end
puts "Fin des calculs"
puts "Des erreurs ont été rencontrées " if avecErreur
Nous obtenons en sortie :
20*10=200
20+10=30
20/10=2
20-10=10
Fin des calculs
Des erreurs ont été rencontrées
Cas 2def calcul( operateur, *val )
res = 0
for i in val
case operateur
when "+"
res += i
when "-"
if ( res == 0 )
res = i
else
res -= i
end
when "*"
if res == 0 then
res = i
else
res *= i
end
when "/"
if ( i == 0 )
throw :erreur
else
if ( res == 0 ) then
res = i
else
res /= i
end
end
end
end
res
end
avecErreur = true
catch( :erreur ) do
for op in ["*","+", "/", "-" ]
puts "50#{op}2#{op}5=#{calcul( op, 50, 2, 5 )}"
end
puts "50/2/0=#{calcul( "/", 50, 2, 0 )}"
avecErreur...