В одному рядку деякого тексту розміщується в середньому 60 символів, а на одній сторінці - 40 рядків. Скільки закодованих сторінок цього тексту можна взяти, щоб довжина двійкового коду не перевищувала 8 Мбайт (1 символ кодується 8 бітами).
1. Числа образуют последовательность, для n-го члена которой верны следующие соотношения: Последняя формула позволит ответить на вопрос "Сколько дней понадобиться,чтобы лягушка съела больше 35 комаров за раз", для чего надо решить неравенство: Т.е. это произойдет в шестой день. Хороший проверить работу программы.
var i,an,s,f:integer;
begin s:=0; an:=0; f:=0; for i:=1 to 10 do begin an:=2*an+1; if f=0 then if an>35 then begin Writeln('День ',i,', за раз съедено комаров- ',an); f:=1 end; s:=s+an end; Writeln('За 10 дней съедено комаров: ',s) end.
Результат выполнения программы: День 6, за раз съедено комаров- 63 За 10 дней съедено комаров: 2036
2. Используем алгоритм Евклида.
var a, b: integer; begin Write('Введите два натуральных числа: '); Readln(a,b); if a<>b then repeat if a > b then a := a - b else b := b - a until a=b; Writeln('НОД=',b) end.
Тестовое решение: Введите два натуральных числа: 264 5436 НОД=12
Program Diagonal; uses Crt; const n = 5; Type Mas = array [1..n, 1..n] of integer; Vec = array [1..n*n] of integer; var A: Mas; V: Vec; i, j , k: integer; p : longint; begin ClrScr; Randomize; p:=1; WriteLn('Massiv A:'); for i:=1 to n do begin for j:= 1 to n do begin A[i, j]:= 1+random (9); p:=p*A[i,i]; Write(A[i, j]:4); end; WriteLn; WriteLn; end; k:=0; for i:=1 to n do for j:=1 to n do begin if (A[i,j]>p) and (j<i) then begin k:=k+1; V[k]:=A[i, j]; end; end; WriteLn('Vector V='); for j:=1 to k do Write(V[j]:4);
WriteLn; if k=0 then Writeln ('None'); ReadLn; end.
Последняя формула позволит ответить на вопрос "Сколько дней понадобиться,чтобы лягушка съела больше 35 комаров за раз", для чего надо решить неравенство:
Т.е. это произойдет в шестой день. Хороший проверить работу программы.
var
i,an,s,f:integer;
begin
s:=0; an:=0; f:=0;
for i:=1 to 10 do
begin
an:=2*an+1;
if f=0 then
if an>35 then
begin
Writeln('День ',i,', за раз съедено комаров- ',an);
f:=1
end;
s:=s+an
end;
Writeln('За 10 дней съедено комаров: ',s)
end.
Результат выполнения программы:
День 6, за раз съедено комаров- 63
За 10 дней съедено комаров: 2036
2. Используем алгоритм Евклида.
var
a, b: integer;
begin
Write('Введите два натуральных числа: '); Readln(a,b);
if a<>b then
repeat
if a > b then a := a - b
else b := b - a
until a=b;
Writeln('НОД=',b)
end.
Тестовое решение:
Введите два натуральных числа: 264 5436
НОД=12
uses Crt;
const n = 5;
Type Mas = array [1..n, 1..n] of integer;
Vec = array [1..n*n] of integer;
var A: Mas;
V: Vec;
i, j , k: integer;
p : longint;
begin
ClrScr;
Randomize;
p:=1;
WriteLn('Massiv A:');
for i:=1 to n do
begin
for j:= 1 to n do
begin
A[i, j]:= 1+random (9);
p:=p*A[i,i];
Write(A[i, j]:4);
end;
WriteLn; WriteLn;
end;
k:=0;
for i:=1 to n do
for j:=1 to n do
begin
if (A[i,j]>p) and (j<i) then
begin
k:=k+1;
V[k]:=A[i, j];
end;
end;
WriteLn('Vector V=');
for j:=1 to k do
Write(V[j]:4);
WriteLn;
if k=0 then Writeln ('None');
ReadLn;
end.