Составить циклический алгоритм решения . определит сколько лет вклад должен находиться в банке, чтобы сумма вклада достигла или превысила 1000000 руб. при условии, что начальная сумма вклада составляет а рублей, и банк ежегодно начисляет 5 %.
Var t:integer; b,a:real; begin write('Вклад равен '); read(a); b:=1.05; while a<1000000 do begin a:=a*b; t:=t+1; end; write('Под процентами пролежавши ',t,' лет вклад накопил ',a:12:4,' рублей'); end.
Логическая операция ⊕ - это "исключающее ИЛИ" (xor в языках Паскаль, Бейсик и т.д.), а → операция присваивания. Тогда a⊕b→a; a⊕b→b; a⊕b→a - это был обмен значениями a ↔ b Теперь по этой же схеме обменяем местами b и с: b⊕c→b; b⊕c→с; b⊕c→b. Результат: b→a; c→b; a→c
Программа для иллюстрации: // PascalABC.NET 3.1, сборка 1218 от 12.04.2016 begin var a:=50; var b:=-20; var c:=0; Println('Исходные значения: a=',a,'b=',b,'c=',c); a:=a xor b; b:=a xor b; a:=a xor b; b:=b xor c; c:=b xor c; b:=b xor c; Println('Результат обмена: a=',a,'b=',b,'c=',c) end.
USES CRT,Graph;VAR Device,Mode:Integer; i,x,y,s:Integer;BEGINCLRSCR; Device:=0; InitGraph(Device,Mode,''); s:=100; x:=320; y:=240; for i:=1 to 9 do begin SetLineStyle(0,0,ThickWidth); Circle(x,y,s); Delay(200); SetColor(Black); Circle(x,y,s); s:=s-10; SetColor(White); end; for i:=1 to 9 do begin SetLineStyle(0,0,ThickWidth); Circle(x,y,s); Delay(200); SetColor(Black); Circle(x,y,s); s:=s+10; SetColor(White); end; Circle(x,y,s);Readln;END.
b,a:real;
begin
write('Вклад равен ');
read(a);
b:=1.05;
while a<1000000 do
begin
a:=a*b;
t:=t+1;
end;
write('Под процентами пролежавши ',t,' лет вклад накопил ',a:12:4,' рублей');
end.