1. В результате выполнения фрагмента программы while n <> 0 do begin write(2*(n mod 5 + 3)); n := n div 10; end; на экран выведено число 10614. Какое число хранилось до этого в переменной n, если известно, что все цифры в нем нечетные?
будем считать что слова разделены пробелами. значит считаем количество пробелов, чем больше пробелов тем больше слов.
ВНИМАНИЕ! программа не проверяет на двойные пробелы, а так же на пробелы в начале и конце строк что может привести к неправильному подсчету слов при неаккуратном вводе строк. Все эти проверки можно добавить но это усложнит программу...
var
s1, s2 : string;
w1, w2 : integer;
begin
write('строка 1: ');
readln(s1);
write('строка 2: ');
readln(s2);
for var i := 1 to s1.Length do if copy(s1, i, 1) = ' ' then w1 += 1;
for var i := 1 to s2.Length do if copy(s2, i, 1) = ' ' then w2 += 1;
будем считать что слова разделены пробелами. значит считаем количество пробелов, чем больше пробелов тем больше слов.
ВНИМАНИЕ! программа не проверяет на двойные пробелы, а так же на пробелы в начале и конце строк что может привести к неправильному подсчету слов при неаккуратном вводе строк. Все эти проверки можно добавить но это усложнит программу...
var
s1, s2 : string;
w1, w2 : integer;
begin
write('строка 1: ');
readln(s1);
write('строка 2: ');
readln(s2);
for var i := 1 to s1.Length do if copy(s1, i, 1) = ' ' then w1 += 1;
for var i := 1 to s2.Length do if copy(s2, i, 1) = ' ' then w2 += 1;
if w1 > w2 then writeln(s1)
else if w1 < w2 then writeln(s2)
else writeln(s1, ' ', s2);
end.
1. program ex1;
uses crt;
var i, count : integer;
begin
count:=0;
for i:=1 to 9999 do
begin
if (i mod 5 = 0) and (i mod 7 = 0) then
begin
writeln(i);
count:=count+1;
if count=10 then
break;
end;
end;
end.
2. program ex2;
var sum, count, n : integer;
begin
count:=0;
n:=9999;
sum:=0;
while not (n = 0) do
begin
readln(n);
if (not n mod 2 = 0) and (n>0) then
begin
sum:=sum+n;
count:=count+1;
end;
end;
writeln('Ср. арифм. = ', sum/count);
end.
3. program ex1;
var price, i: integer;
begin
write('Введите цену товара за 1 кг. :');
readln(price);
for i:=1 to 15 do
write(i:6, '|');
writeln();
for i:=1 to 15 do
write('');
writeln();
for i:=1 to 15 do
write((price/10*i):6,'|');
end.