platan3698952
?>

Решите по паскалю. даны три числа x, y, z найдите количество и произведение нечетных чисел принадлежащих отрезку c; d.

Информатика

Ответы

Nurislamovna1543

program start; var x,y,z: integer; beginreadln(x,y,z); if (x mod 2 = 0) and (y mod 2 = 0) and (z mod 2 = 0) then writeln('кол-во: 3 | произведение: ' , z*y*x) else if (x mod 2 = 0) and (y mod 2 = 0) then writeln('кол-во: 2 | произведение: ' , y*x) else if (x mod 2 = 0) and (z mod 2 = 0) then writeln('кол-во: 2 | произведение: ' , z*x) else if (z mod 2 = 0) and (y mod 2 = 0) then writeln('кол-во: 2 | произведение: ' , y*z) else if (x mod 2 = 0) then writeln('кол-во: 1 | произведение: ' , x) else if (y mod 2 = 0) then writeln('кол-во: 1 | произведение: ' , y) else if (z mod 2 = 0) then writeln('кол-во: 1 | произведение: ' , z) else writeln('все числа нечетные! ');

end.

alyonafialka
Немного теории. для того, чтобы избежать переполнения разрядной сетки, значение квадрата натурального числа не должно превышать максимального числа, представимого выбранным типом данных. в языке паскаль числа типа longint записываются в четырех байтах в дополнительном коде, т.е. максимальное значение числа не может превышать 2³¹-1. тогда максимальное натуральное число, квадрат которого мы можем вычислить, равно целой части от величины:   //pascalabc.net 3.0, сборка 1066 var   s: string;   i,n,lim,l: longint; begin   lim: =trunc(exp(15.5*ln(;   write('введите номер позиции: '); read(n);   i: =0; l: =0;   while (l< n) and (i< =lim) do begin       inc(i); str(i*i,s); l: =l+length(s);   end;   if i< =lim then writeln('искомая цифра- ',s[length(s)-l+n])   else writeln('решения в типе данных longint невозможно') end. тестовое решение: введите номер позиции: 4 искомая цифра- 1 введите номер позиции: 33 искомая цифра- 5
opscosmiclatte7868
Вбейсике есть встроенная функция atn - арктангенс,поэтому угол можно в градусах посчитать.dim a, b, c, cs, cst, ang, piinput " a = ", ainput " b = ", binput " c = ", cprintpi = 3.141593cs = (b * b + c * c - a * a) / (2 * b * c)cst = csif cs < 0 then cst = sqr(1 - cs * cs)ang = atn(sqr(1 - cst * cst) / cst) * 360 / (2 * pi)if cs < 0 then ang = ang + 90print "угол a = ",print using "###.##"; angcs = (a * a + c * c - b * b) / (2 * a * c)cst = csif cs < 0 then cst = sqr(1 - cs * cs)ang = atn(sqr(1 - cst * cst) / cst) * 360 / (2 * pi)if cs < 0 then ang = ang + 90print "угол b = ",print using "###.##"; angcs = (a * a + b * b - c * c) / (2 * a * b)cst = csif cs < 0 then cst = sqr(1 - cs * cs)ang = atn(sqr(1 - cst * cst) / cst) * 360 / (2 * pi)if cs < 0 then ang = ang + 90print "угол c = ",print using "###.##"; angprint "выход - любая клавиша "doloop while inkey$ = ""

Ответить на вопрос

Поделитесь своими знаниями, ответьте на вопрос:

Решите по паскалю. даны три числа x, y, z найдите количество и произведение нечетных чисел принадлежащих отрезку c; d.
Ваше имя (никнейм)*
Email*
Комментарий*