06.02.2022

Язык Паскаль. Вывести слова предложения в столбец

Задача. Дано предложение s. Вывести все его слова в столбец.

Будем считать, что слова разделяются одним пробелом. Будем идти вдоль строки, если символ равен пробелу, то выводим накопленное слово y и обнуляем его, иначе копим слово y.

При таком условии необходимо заранее в конец предложения положить пробел, чтобы вывести последнее накопленное слово.

Программа решения задачи на языке Паскаль

var s,y:string; k:integer;

begin

  writeln('Введите предложение');

  readln(s);

  s:=s+' ';

  y:='';

  for k:=1 to length(s) do

   if s[k]=' ' then begin

                     writeln(y);

                     y:='';

                    end

               else y:=y+s[k];

end.

Результат запуска программы

результат запуска

Обратите внимание, что знак препинания "прилипает" к слову и в данном случае является его частью.

05.02.2022

Верно ли, что в строке имеется заданная подстрока?

Дана строка s. Верно ли, что в строке s имеется заданная подстрока y?

Для определения принадлежности некоторой подстроки заданной сроке будем использовать операцию вхождения in.

Программа решения на языке Паскаль:

var s,y:string;

begin

  writeln('Введите строку');

  readln(s);

  writeln('Введите подстроку');

  readln(y);

  if y in s then writeln('верно, подстрока ',y,' входит в строку ',s) else writeln('неверно, подстрока ',y,' не входит в строку ',s);

end.

04.02.2022

Верно ли, что четных цифр больше, чем нечетных

Задача. Дано натуральное число N. Верно ли, что четных цифр больше, чем нечетных?

Воспользуемся циклом while с условием продолжения: n не равно 0.

Пока число n не равно 0, будем вычислять остаток от деления на 10 - это будет цифра числа, будем уменьшать число n в 10 раз операцией div (деление нацело). Также будем выяснять, какая перед нами цифра, четная или нечетная, и копить два счетчика k и c (количество четных и количество нечетных цифр).

После цикла сравним значения счетчиков k и c.

Программа решения задачи на языке Паскаль:

var n,k,c:integer;

begin

readln(n);

k:=0; c:=0;

while n<>0 do

begin

d:=n mod 10; //цифра

if (d mod 2=0) then k:=k+1 else c:=c+1;

n:=n div 10;

end;

if k>c then writeln('верно') else writeln('неверно');

end.

Программа решения задачи на языке Python

n = int(input('Введите натуральное число: ')) k = 0 c = 0 while n!=0: d = n % 10 if d % 2 == 0: k+=1 else: c+=1 n//=10 if k>c: print('Верно') else: print('Неверно')

Вывести на экран цифры заданного числа

Задача. Дано натуральное число N. Вывести на экран в столбец цифры данного числа

Воспользуемся циклом while с условием продолжения n не равно 0. Пока число n не равно 0, будем вычислять остаток от деления на 10,  и это будет цифра числа, будем уменьшать число n в 10 раз операцией div (деление нацело).

Программа решения на языке Паскаль

var n, d:integer;

begin

readln(n);

while n<>0 do

begin

d:=n mod 10;

println(d);

n:=n div 10;

end;

end.

Программа решения на языке Python

n = int(input('Введите число n = '))
while n!=0:
    d = n % 10
    print(d)
    n = n // 10

Результат запуска программы


Обратим внимание на то, что цифры выводятся в обратном порядке.

03.02.2022

Вывести на экран все натуральные двузначные числа

Вывести на экран в столбец все натуральные двузначные числа

Запустим цикл for для счетчика i с начальным значением 10 (наименьшее двузначное число) и конечным значением 99 (наибольшее двузначное число), в теле цикла выведем значение счетчика на экран.

Программа решения на языке Паскаль:

var i:integer;

begin

for i:=10 to 99 do

writeln(i);

end.