Хелпикс

Главная

Контакты

Случайная статья





Задание 17 часть 1. Решение. for i:=4668 to 10414 do



Задание 17 часть 1

 

Рассматривается множество целых чисел, принадлежащих числовому отрезку [256; 2566], которые делятся на 7 и не делятся на 21, 23, 31.

 

Найдите сумму таких чисел и максимальное из них. В ответе запишите два целых числа: сначала сумму, затем максимальное число (через пробел).

Решение

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

 

  m = 0   s = 0 for i in range (256, 2567): if i%7==0 and i%21! =0 and i%23! =0 and i%31! =0: s = s + i if i > m: m = i print(s, m)

 

В данной программе знак % заменяет слово «делится».

Запускаем, получаем на экране результат 287427 2555

Ответ: 287427 2555

 

Еще примеры подобных заданий

Пример 1

Рассматривается множество целых чисел, принадлежащих числовому отрезку [4668; 10414], которые делятся на 4 и не делятся на 7, 17.

Найдите количество таких чисел и максимальное из них. В ответе запишите два целых числа: сначала количество, затем максимальное число.

Решение:

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

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

var i, c, max: integer;

begin

 

c: =0;

max: =0;

 

for i: =4668 to 10414 do

begin

if (i mod 4 = 0) and (i mod 7 < > 0) and (i mod 17 < > 0) then  

begin

c: = c + 1;

if i > max then max: =i;

end;

end;

 

Writeln(c);

Writeln(max);

 

End.

Рассмотрим анатомию данной программы:

В начале заводятся 3 переменные: для количества чисел, удовлетворяющих условию задачи (переменная c ), и для максимального значения (переменная max ) и для ЦИКЛА дополнительную переменную i.

Затем идёт инициализация переменных, т. е. присваиваем переменным начальные значения.

В начале количество чисел, удовлетворяющих условию задачи, равно нулю, поэтому переменная c равна нулю.

Переменной max присваиваем значение ноль. Мы выбираем очень маленькое значение специально, т. к. далее в ЦИКЛЕ будем брать все целые числа из заданного диапазона, и, если найдётся число, удовлетворяющее условию задачи, большее, чем значение в переменной max, то это число запишем в переменную max.

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

Для этого мы и делаем очень маленькое значение в начале. Ведь, если поставить в переменную max большое значение, его будет сложно " победить", и мы получим не правильный результат.

Важно знать: Если мы ищем максимальное значение, то в начале в переменную max кладём минимальное значение.

Примечание: Если после выполнения программы в переменной max останется ноль, значит, нету чисел в указанном интервале, удовлетворяющих условию задачи.

 

Далее идёт ЦИКЛ for. Он перебирает все целые числа от 4668 до 10414. Границы цикла показывают ключевые слова begin и end. Эти слова показывают границы чего-либо в языке программирования Паскаль. У нас с помощью этих слов в этом примере показаны границы основной части программы, ЦИКЛА for и условия!

Внутри ЦИКЛА находится команда условия if. Она проверяет подходит ли конкретное число из обозначенного диапазона под наши условия задачи. Если ДА, то мы прибавляем к переменной с единицу и проверяем может ли данное число претендовать на на максимальное значение.

Важно знать: Когда ищем количество, мы в ЦИКЛЕ прибавляем к переменной по 1.

После окончания ЦИКЛА у нас в переменных c и мах будут уже нужные нам значения. И мы их распечатываем на экран.


Количество чисел получилось 1159, а максимальное число, удовлетворяющие условию задачи, будет 10412.


Ответ: 115910412

 

Пример 2

Рассматривается множество целых чисел, принадлежащих числовому отрезку [-2031; 5021], которые делятся на 7, являются нечётными и не делятся на 3.

Найдите сумму таких чисел и минимальное из них. В ответе запишите два целых числа: минимальное значение, затем сумму.

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


Решение:
Напишем программу на языке Pascal.

var i, sum, min: integer;



  

© helpiks.su При использовании или копировании материалов прямая ссылка на сайт обязательна.