Найти остаток от деления числа - Pascal
Формулировка задачи:
В данной задаче нельзя использовать цикл, т.к. не уложитесь по времени.
Время выполнения программы не более 2 сек
Написать программу, которая находит остаток от деления числа:
2^21+2^22+2^23+...+2^2n-1+2^2n на 7
Входные данные:
Вводится n<100 000
Выходные данные:
остаток от деления
Решение задачи: «Найти остаток от деления числа»
textual
Листинг программы
#include <iostream> using namespace std; int main() { int b,z,n,x,y; b = 0, z = 1; for(x = 1; x < n; x++) { y = z*2; if (x>=21) b+=y; } b%=7; cout<<b; }
Объяснение кода листинга программы
- Объявляются переменные:
b
(остаток от деления),z
(значение для вычисления переменнойy
),n
(неинициализированная переменная),x
(переменная для цикла),y
(результат вычисления).
- Присваиваются начальные значения переменным
b
иz
:b = 0
иz = 1
соответственно. - Выполняется цикл
for
отx = 1
доn - 1
. - Вычисляется значение переменной
y
какz*2
. - Выполняется условие
if
: еслиx
больше или равно 21, то к значению переменнойb
прибавляется значение переменнойy
. - Вычисляется остаток от деления
b
на 7:b%=7
. - Выводится значение переменной
b
в консоль:cout<<b
.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д