a:=1; b:=1;
For i:=0 to n Do
Begin
For j:=1 To b Do
Write ('*') ;
WriteLn;
c:=a+b; a:=b; b:=c;
End;
если n=6? Решение какой задачи выражает этот фрагмент программы?
2. Что будет выведено на экране монитора после выполнения следующего фрагмента программы:
b: = 0 ;
While а<>0 Do
Begin
b:=b*10+а Mod 10;
а:=а Div 10;
End;
Write (b) ;
если a=13305? Решение какой задачи выражает этот фрагмент программы?
3. Выведите на экран числа в следующем виде:
7 6 5 4 3 2
6 5 4 3 2
5 4 3 2
4 3 2
3 2
2
4. Разобрать решение задачи:
Составить программу-генератор пифагоровых троек. Пифагоровой тройкой называют такие целые числа a, b и c, которые удовлетворяют условию a2+b2=c2. Известно, что существует прямоугольный треугольник с такими длинами сторон. Найдем все пифагоровы тройки для c < 5.
Тройное вложение циклов позволит перебрать все возможные комбинации значений трех чисел a, b и c и вывести те из них, которые удовлетворяют заданному равенству.
MaxC:=25;
MaxAB:=trunc(sqrt(MaxC));
for a:=1 to MaxAB do
for b:=1 to MaxAB do
for c:=1 to MaxC do
if a*a+b*b = c*c then
begin
write(a, ' ', b, ' ', c); writeln;
end;
Как всегда при решении задачи методом перебора, следует задуматься, можем ли мы сократить число перебираемых вариантов. Оказывается, можно ограничиться только перебором a и b, а cвычислять по теореме Пифагора. Вычисленное таким образом c может оказаться нецелым, поэтому условие задачи для него проверять все равно необходимо.
MaxC:=25;
MaxAB:=trunc(sqrt(MaxC));
for a:=1 to MaxAB do
begin
for b:=1 to MaxAB do
begin
c:=round(sqrt(a*a+b*b));
if a*a+b*b = c*c then
begin
write(a, ' ', b, ' ', c); writeln;
end;
end;
end;
5. Исходное данное — натуральное число S, выражающее площадь. Написать программу для нахождения всех таких прямоугольников, площадь которых равна S и стороны выражены натуральными числами.