Задачи по Pascal. Найти сумму целых чисел от A до B, которые делятся на пять

Задачи по Pascal

Условие задачи: Даны два целых числа A,B (A<B). Найти сумму целых чисел от A до B,которые делятся на пять. (Язык Pascal)

Сложность: легкая.

Решение задачи

Для начала продумаем наше решение. Мы введем два числа, проверим их на условие (A < B), потом сделаем цикл от A до B и в нем будем проверять каждое число, делится ли оно на 5, если да, то увеличим сумму.

Для того чтобы решить задачу нам понадобятся следующие переменные :

  1. Переменная A — для первого числа
  2. Переменная B — для второго числа
  3. Переменная i — для цикла for
  4. Переменная sum — для суммы

Начнем мы с каркаса нашей программы

1
2
3
4
5
6
var
A, B, i, sum : integer;
begin
write('Введите A : ');readln(A);
write('Введите B : ');readln(B);
end.

Тут мы объявили все переменные и попросили пользователя ввести числа A и B. Дальше нам надо проверить условие (A < B), пишем:

1
2
3
4
5
if (A > B) then
begin
writeln('Нужно ввести А меньше чем В ');
halt;
end;

Т.е. если (A > B), то мы просто выходим из программы, с помощью процедуры halt.

Ну а теперь цикл, в нем мы проверим делится ли каждое число на 5 с помощью операции mod, которая ищет остаток от деления, подробнее ( тут ).

1
2
3
4
5
for i:=A to B do
begin
if (i mod 5 = 0) then
sum := sum + i;
end;

Вот и всё. Каждое число которое делится на пять прибавляем к общей сумме.

Всё решение задачи Pascal

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
var
A, B, i, sum : integer; // объявляем переменные
begin
write('Введите A : ');readln(A); // вводим А
write('Введите B : ');readln(B); // вводим В
sum := 0; // обнуляем сумму чтобы не было ошибок
if (A > B) then // если A > B
begin
writeln('Нужно ввести А меньше чем В '); // выводим сообщение
halt; // выходим из программы
end;
for i:=A to B do // делаем цикл
begin
if (i mod 5 = 0) then // если число делится нацело на 5
sum := sum + i; // то увеличиваем сумму на это число
end;
writeln('Сумма чисел от ', A, ' до ', B , ' равна : ', sum); // выводим результат
readln; // чтобы программа не закрывалась
end.
cyber
Оцените автора
CyberLesson | Быстро освоить программирование Pascal и C++. Решение задач Pascal и C++
Добавить комментарий