Portál AbcLinuxu, 30. října 2025 08:02
Tiskni
Sdílej:
program mala_nasobilka;
var f,a,b,c,p,s:integer;
pu:real;
begin
randomize;
s:=0;
write('Pocet prikladov ? ');
readln(p);
for f:=1 to p do
begin
a:=random(11);
b:=random(11);
write(a,' x ',b,' = ');
readln(c);
if c = a * b then
begin
writeln;
writeln('spravne');
writeln;
inc(s);
end
else writeln('nespravne');
end;
pu:=(s/p) * 100;
writeln;
writeln('Celkovy pocet prikladov: ',p,' z toho spravnych prikladov ',s,'. Percentualna uspesnost ', pu:2:0, '%');
end.
V pythone by som to robil asi nejak takto (sorry ak tam chybaju nejake medzery a pod., nedaval som na to zas az taky pozor).
import sys
import random
import operator
modX = lambda x: x % 10 + 1
ops = {
'+': (operator.add, int, int),
'-': (operator.sub, int, int),
'*': (operator.mul, modX, modX),
'/': (operator.div, int, modX)
}
print "Vitej, maly poctari. Jsi pripraven na trochu zabavy? (Program ukoncis necelociselnym vstupom.)\n"
while True:
i1 = random.randint(1,100)
i2 = random.randint(1,100)
op = random.choice(list(ops))
fop, mod1, mod2 = ops[op]
i1 = mod1(i1)
i2 = mod2(i2)
vysl = fop(i1, i2)
try:
guess = int(raw_input("%6d\n%6s\n%6d\n\nVysledek: " % (i1, op, i2)))
except ValueError:
sys.exit(1)
while guess != vysl:
print "Spatne, tupce! Pocitej znovu.\n"
try:
guess = int(raw_input("%6d\n%6s\n%6d\n\nVysledek: " % (i1, op, i2)))
except ValueError:
sys.exit(1)
op = random.choice(['+', '-', '*', '/'])
result = eval('%d %s %d' % (num1, op, num2))
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.