1)вывести трехзначные числа сумма цифр которых простое число pascal. 2)Дана последовательность 5,9,13,17,..... Составте программу для определения числа слагаемых, сумма которых равна 324. 3)Сумма 10000 рублей положена в сберегательный банк при этом прирост состовляет 5% годовых. Составте программу определяюшую через какой промежуток времени первоночальная сумма увиличиться в двое. Язык програмирования Pascal.
1) Программа для вывода трехзначных чисел, сумма цифр которых является простым числом:
program PrimeSumDigits; var number, digit1, digit2, digit3, sum, i, j: integer; isPrime: boolean; function IsPrimeNumber(num: integer): boolean; var k: integer; begin IsPrimeNumber := true; for k := 2 to num div 2 do begin if num mod k = 0 then begin IsPrimeNumber := false; break; end; end; end; begin for i := 100 to 999 do begin digit3 := i mod 10; digit2 := (i div 10) mod 10; digit1 := i div 100; sum := digit1 + digit2 + digit3; isPrime := IsPrimeNumber(sum); if isPrime then writeln(i); end; end.
2) Программа для определения числа слагаемых последовательности:
program SequenceSum; var sum, n, i, num: integer; begin sum := 324; n := 0; num := 5; repeat inc(n); num := num + 4; sum := sum - num; until sum <= 0; writeln('Число слагаемых: ', n); end.
3) Программа для определения промежутка времени удвоения суммы:
program Savings; var money: real; rate, target, years: integer; begin money := 10000; rate := 5; target := 20000; years := 0; repeat money := money + (money * rate / 100); inc(years); until money >= target; writeln('Через ', years, ' лет первоначальная сумма увеличится в двое'); end.
1) Программа для вывода трехзначных чисел, сумма цифр которых является простым числом:
program PrimeSumDigits;var
number, digit1, digit2, digit3, sum, i, j: integer;
isPrime: boolean;
function IsPrimeNumber(num: integer): boolean;
var
k: integer;
begin
IsPrimeNumber := true;
for k := 2 to num div 2 do
begin
if num mod k = 0 then
begin
IsPrimeNumber := false;
break;
end;
end;
end;
begin
for i := 100 to 999 do
begin
digit3 := i mod 10;
digit2 := (i div 10) mod 10;
digit1 := i div 100;
sum := digit1 + digit2 + digit3;
isPrime := IsPrimeNumber(sum);
if isPrime then
writeln(i);
end;
end.
2) Программа для определения числа слагаемых последовательности:
program SequenceSum;var
sum, n, i, num: integer;
begin
sum := 324;
n := 0;
num := 5;
repeat
inc(n);
num := num + 4;
sum := sum - num;
until sum <= 0;
writeln('Число слагаемых: ', n);
end.
3) Программа для определения промежутка времени удвоения суммы:
program Savings;var
money: real;
rate, target, years: integer;
begin
money := 10000;
rate := 5;
target := 20000;
years := 0;
repeat
money := money + (money * rate / 100);
inc(years);
until money >= target;
writeln('Через ', years, ' лет первоначальная сумма увеличится в двое');
end.