Пройти тестирование по этим заданиям
Вернуться к каталогу заданий
Версия для печати и копирования в MS Word
1
Задания Д18 № 503
Переменные x и y описаны в программе как целочисленные. Определите значение переменной x после выполнения следующего фрагмента программы:
Бэйсик | Паскаль |
---|---|
x = 432 y = x DIV 100 x = (x MOD 100) * 10 x = x + y |
x : = 432; y : = x div 100; x : = (x mod 100) * 10; x : = x + y; |
Си++ | Алгоритмический язык |
x = 432; y = x / 100; x = (x % 100) * 10; x = x + y; |
x : = 432; y : = div(x,100); x : = mod(x, 100) * 10 x : = x + y |
Python | |
x = 432 y = x // 100 x = (x % 100) * 10 x = x + y |
2
Задания Д18 № 501
Определите значение переменной b после выполнения следующего фрагмента программы, в котором a и b − переменные вещественного (действительного) типа.
Бэйсик | Паскаль |
---|---|
а = 5 b = 5 – 5 * a b = b / 2 * a |
a := 5; b := 5 – 5 * a; b := b / 2 * a; |
Си++ | Алгоритмический язык |
a = 5; b = 5 – 5 * a; b = b / 2 * a; |
a := 5 b := 5 – 5 * a b := b / 2 * a |
Python | |
а = 5 b = 5 – 5 * a b = b / 2 * a |
3
Задания Д18 № 504
Определите значение переменной c после выполнения следующего фрагмента программы:
Бэйсик | Паскаль |
---|---|
а = 7 a = a – 4 b = –a c = –a + 2 * b |
a : = 7 ; a : = a – 4 ; b : = –a ; c : = –a + 2 * b ; |
Си++ | Алгоритмический язык |
а = 7 ; a = a – 4 ; b = –a ; c = –a + 2 * b; |
a : = 7 a : = a – 4 b : = –a c : = –a + 2 * b |
Python | |
а = 7 a = a – 4 b = –a c = –a + 2 * b |
4
Задания Д18 № 505
Определите значение переменной c после выполнения следующего фрагмента программы:
Бэйсик | Паскаль |
---|---|
а = 2 b = 2 + 4 b = 1 – b c = –b + 3 * b |
a : = 2 ; b : = 2 + 4 ; b : = 1 – b ; c : = –b + 3 * b ; |
Си++ | Алгоритмический язык |
а = 2 ; b = 2 + 4 ; b = 1 – b ; c = –b + 3 * b ; |
a : = 2 b : = 2 + 4 b : = 1 – b c : = –b + 3 * b |
Python | |
а = 2 b = 2 + 4 b = 1 – b c = –b + 3 * b |
5
Задания Д18 № 506
Определите значение суммы целочисленных переменных x и y после выполнения фрагмента программы:
Бэйсик | Паскаль |
---|---|
x = 4 + 8 * 3 y = ( x MOD 10 ) + 15 x = ( y DIV 10) + 3 |
x : = 4 + 8 * 3 ; y : = ( x mod 10 ) + 15; x : = ( y div 10 ) + 3 |
Си++ | Алгоритмический язык |
x = 4 + 8 * 3; y = x%10 + 15; x = y/10 + 3; |
x : = 4 + 8 * 3 y : = mod(x, 10) + 15 x : = div(y, 10) + 3 |
Python | |
x = 4 + 8 * 3 y = (x % 10) + 15 x = (y // 10) + 3 |
Пройти тестирование по этим заданиям
Дано целое положительное число N ≥ 10. Необходимо найти наибольшую сумму двух соседних цифр в десятичной записи N. Например, для N = 2018 нужно получить ответ 9, а для N = 2010 ответ 2.
Для решения этой задачи ученик написал программу, но, к сожалению, его программа неправильная.
Ниже эта программа для Вашего удобства приведена на пяти языках программирования.
Бейсик | Python |
---|---|
DIM N,M,D1,D2,S AS INTEGER INPUT N M = 0 D1 = N MOD 10 WHILE N > 0 D2 = N MOD 10 S = D1 + D2 IF S > M THEN M = S END IF D1 = N MOD 10 N = N 100 WEND PRINT M |
n = int(input()) m = 0 d1 = n%10 while n>0: d2 = n % 10 s = d1 + d2 if s > m: m = s d1 = n%10 n //= 100 print(m) |
Паскаль | Алгоритмический язык |
var n,m,d1,d2,s: integer; begin readln(n); m := 0; d1 := n mod 10; while n > 0 do begin d2 := n mod 10; s := d1 + d2; if s > m then m := s; d1 := n mod 10; n := n div 100 end; writeln(m) end. |
алг нач цел n,m,d1,d2,s ввод n m := 0 d1 := mod(n,10) нц пока n > 0 d2 := mod(n,10) s := d1 + d2 если s > m то m := s все d1 := mod(n,10) n := div(n,100) кц вывод m кон |
С++ | |
#include <iostream> using namespace std; int main() { int n,m,d1,d2,s; cin >> n; m = 0; d1 = n % 10; while (n > 0) { d2 = n % 10; s = d1 + d2; if (s > m) m = s; d1 = n % 10; n /= 100; } cout << m; return 0; } |
Последовательно выполните следующее.
1. Напишите, что выведет эта программа при вводе N = 2018.
2. Приведите пример числа N, при котором программа выведет верный ответ. Укажите этот ответ.
3. Найдите в программе все ошибки (известно, что их не больше двух) и исправьте их. Для каждой ошибки выпишите строку, в которой она допущена, и приведите эту же строку в исправленном виде.
Достаточно указать ошибки и способ их исправления для одного языка программирования.
Обратите внимание: Вам нужно исправить приведённую программу, а не написать свою. Вы можете только заменять ошибочные строки, но не можете удалять строки или добавлять новые. Заменять следует только ошибочные строки: за исправления, внесённые в строки, не содержащие ошибок, баллы будут снижаться.
в условии
в решении
в тексте к заданию
в атрибутах
Категория:
Атрибут:
Всего: 320 1–20 | 21–40 | 41–60 | 61–80 | 81–100 | 101–120 …
Добавить в вариант
Ниже записана программа. Получив на вход число x , эта программа печатает два числа, L и M. Укажите наименьшее из таких чисел x, при вводе которых алгоритм печатает сначала 3, а потом 7.
Бейсик | Python |
---|---|
DIM X, L, M AS INTEGER INPUT X L = 0 M = 0 WHILE X > 0 L = L + 1 IF M < x THEN M = x mod 10 ENDIF x = x 10 PRINT L PRINT M |
x = int(input()) L = 0 M = 0 while x > 0: L = L + 1 if M < x: M = x % 10 x = x // 10 print(L) print(M) |
Паскаль | Алгоритмический язык |
var x, L, M: integer; begin readln(x); L := 0; M := 0; while x > 0 do begin L := L + 1; if M < x then M:= x mod 10; x := x div 10; end; writeln(L); writeln(M); end. |
алг нач цел x, L, M ввод x L := 0 M := 0 нц пока x > 0 L := L + 1 если M < x то M := mod(x,10) все x := div(x,10) кц вывод L, нс, M кон |
Си++ | |
#include <iostream> using namespace std; int main() { int x, L, M; cin >> x; L = 0; M = 0; while (x > 0){ L = L + 1; if(M < x){ M = x % 10; } x = x / 10; } cout << L << endl << M << endl; } |
Ниже записана программа. Получив на вход число x , эта программа печатает два числа, L и M. Укажите наименьшее из таких чисел x, при вводе которых алгоритм печатает сначала 3, а потом 7.
Бейсик | Python |
---|---|
DIM X, L, M AS INTEGER INPUT X L = 0 M = 0 WHILE X > 0 L = L + 1 M = M + (x mod 10) ENDIF x = x 10 PRINT L PRINT M |
x = int(input()) L = 0 M = 0 while x > 0: L = L + 1 M = M + (x % 10) x = x // 10 print(L) print(M) |
Паскаль | Алгоритмический язык |
var x, L, M: integer; begin readln(x); L := 0; M := 0; while x > 0 do begin L := L + 1; M:= M + (x mod 10); x := x div 10; end; writeln(L); writeln(M); end. |
алг нач цел x, L, M ввод x L := 0 M := 0 нц пока x > 0 L := L + 1 M := M + mod(x,10) все x := div(x,10) кц вывод L, нс, M кон |
Си++ | |
#include <iostream> using namespace std; int main() { int x, L, M; cin >> x; L = 0; M = 0; while (x > 0){ L = L + 1; M = M + (x % 10); x = x / 10; } cout << L << endl << M endl; } |
Ниже на 5-ти языках записан алгоритм. Получив на вход число x, этот алгоритм печатает два числа a и b. Укажите наибольшее из таких чисел x, при вводе которых алгоритм напечатает сначала 2, а потом 14.
Бэйсик | Паскаль |
---|---|
DIM X, A, B AS INTEGER INPUT X A = 0: B = 1 WHILE X > 0 A = A + 1 B = B * (X MOD 10) X = X 10 WEND PRINT A PRINT B |
var x, a, b : integer; begin readln(x); a := 0; b := 1; while x > 0 do begin a := a + 1; b := b * (x mod 10); x := x div 10; end; writeln(a); write(b); end. |
Си++ | Алгоритмический |
#include <iostream> using namespace std; int main() { int x, a, b; cin >> x; a = 0; b = 1; while (x > 0){ a = a + 1; b = b *(x%10); x= x / 10; } cout << a << endl << b endl; } |
алг нач цел x, a, b ввод x a := 0; b := 1 нц пока x > 0 a := a+1 b := b * mod(x,10) x := div(x,10) кц вывод a, нс, b кон |
Python | |
x = int(input()) a = 0 b = 1 while x > 0: a += 1 b *= x % 10 x = x // 10 print(a) print(b) |
Ниже на 5-ти языках записан алгоритм. Получив на вход число x, этот алгоритм печатает два числа a и b. Укажите наибольшее из таких чисел x, при вводе которых алгоритм печатает сначала 2, а потом 72.
Бэйсик | Паскаль |
---|---|
DIM X, A, B AS INTEGER INPUT X A=0: B=1 WHILE X > 0 A = A+1 B = B*(X MOD 10) X = X 10 WEND PRINT A PRINT B |
var x, a, b: integer; begin readln(x); a:=0; b:=1; while x>0 do begin a:=a+1; b:=b*(x mod 10); x:= x div 10; end; writeln(a); write(b); end. |
Си++ | Алгоритмический |
#include <iostream> using namespace std; int main() { int x, a, b; cin >> x; a=0; b=1; while (x>0){ a=a+1; b=b*(x%10); x= x/10; } cout << a << endl << b endl; } |
алг нач цел x, a, b ввод x a:=0; b:=1 нц пока x>0 a:=a+1 b:=b*mod(x,10) x:=div(x,10) кц вывод a, нс, b кон |
Python | |
x = int(input()) a = 0 b = 1 while x > 0: a += 1 b *= x % 10 x = x // 10 print(a) print(b) |
Ниже на 5-ти языках записан алгоритм. Получив на вход число x, этот алгоритм печатает два числа a и b. Укажите наименьшее из таких чисел x, при вводе которых алгоритм печатает сначала 2, а потом 10.
Бэйсик | Паскаль |
---|---|
DIM X, A, B AS INTEGER INPUT X A=0: B=0 WHILE X > 0 A = A+1 B = B +(X MOD 10) X = X 10 WEND PRINT A PRINT B |
var x, a, b: integer; begin readln(x); a:=0; b:=0; while x>0 do begin a:=a+1; b:=b + (x mod 10); x:=x div 10; end; writeln(a); write(b); end. |
Си++ | Алгоритмический |
#include <iostream> using namespace std; int main() { int x, a, b; cin >> x; a=0; b=0; while (x>0){ a = a+1; b = b + (x%10); x = x/10; } cout << a << endl << b endl; } |
алг нач цел x, a, b ввод x a:=0; b:=0 нц пока x>0 a:=a+1 b:=b+mod(x,10) x:=div(x,10) кц вывод a, нс, b кон |
Python | |
x = int(input()) a = 0 b = 0 while x > 0: a += 1 b += x % 10 x = x // 10 print(a) print(b) |
Ниже на 4-х языках записан алгоритм. Получив на вход число x, этот алгоритм печатает два числа a и b. Укажите наибольшее из таких чисел x, при вводе которых алгоритм печатает сначала 2, а потом 10.
Бэйсик | Паскаль |
---|---|
DIM X, A, B AS INTEGER INPUT X A=0: B=0 WHILE X > 0 A = A+1 B = B +(X MOD 10) X = X 10 WEND PRINT A PRINT B |
var x, a, b: integer; begin readln(x); a:=0; b:=0; while x>0 do begin a:=a + 1; b:=b + (x mod 10); x:=x div 10; end; writeln(a); write(b); end. |
Си++ | Алгоритмический |
#include <iostream> using namespace std; int main() { int x, a, b; cin >> x; a=0; b=0; while (x>0){ a = a+1; b = b +(x%10); x = x/10; } cout << a << endl << b endl; } |
алг нач цел x, a, b ввод x a:=0; b:=0 нц пока x>0 a:=a+1 b:=b+mod(x,10) x:=div(x,10) кц вывод a, нс, b кон |
Python | |
x = int(input()) a = 0 b = 0 while x > 0: a += 1 b += x % 10 x = x // 10 print(a) print(b) |
Определите значение целочисленной переменной c после выполнения фрагмента программы:
Бэйсик | Паскаль |
---|---|
а = 6*12 + 3 b = (a 10)+ 5 a = (b MOD 10)+ 1 с = a + b |
а :=6*12 + 3; b :=(a div 10)+ 5; a :=(b mod 10)+ 1; с := a + b; |
Си++ | Алгоритмический язык |
а =6*12 + 3; b =(a / 10)+ 5; a =(b % 10)+ 1 с = a + b; |
а :=6*12 + 3 b :=div(a, 10)+ 5 a := mod(b, 10)+ 1 с := a + b |
Python | |
а =6*12 + 3 b =(a // 10)+ 5 a =(b % 10)+ 1 с = a + b |
Ниже на 5-ти языках записан алгоритм. Получив на вход число x, этот алгоритм печатает два числа a и b.
Бэйсик | Паскаль |
---|---|
DIM X, A, B AS INTEGER INPUT X A = 0: B = 1 WHILE X > 0 A = A + 1 B = B * (X MOD 10) X = X 10 WEND PRINT A PRINT B |
var x, a, b : integer; begin readln(x); a := 0; b := 1; while x > 0 do begin a := a + 1; b := b * (x mod 10); x := x div 10; end; writeln(a); write(b); end. |
Си++ | Алгоритмический |
#include <iostream> using namespace std; int main() { int x, a, b; cin >> x; a = 0; b = 1; while (x > 0){ a = a + 1; b = b *(x%10); x= x / 10; } cout << a << endl << b endl; } |
алг нач цел x, a, b ввод x a := 0; b := 1 нц пока x > 0 a := a+1 b := b * mod(x,10) x := div(x,10) кц вывод a, нс, b кон |
Python | |
x = int(input()) a = 0 b = 1 while x > 0: a += 1 b *= x % 10 x = x // 10 print(a) print(b) |
Укажите наибольшее из таких чисел x, при вводе которых алгоритм печатает сначала 3, а потом 5.
Источник: Яндекс: Тренировочная работа ЕГЭ по информатике. Вариант 1.
Ниже на 5-ти языках записан алгоритм. Получив на вход число x, этот алгоритм печатает два числа a и b.
Бейсик | Паскаль |
---|---|
DIM X, A, B AS INTEGER INPUT X A = 0: B = 1 WHILE X > 0 A = A + 1 B = B * (X MOD 10) X = X 10 WEND PRINT A PRINT B |
var x, a, b: integer; begin readln(x); a: = 0; b: = 1; while x>0 do begin a : = a + 1; b : = b * (x mod 10); x : = x div 10 end; writeln(a); write(b); end. |
Си++ | Алгоритмический язык |
#include <iostream> using namespace std; int main() { int x, a, b; cin >> x; a = 0; b = 1; while (x>0){ a = a + 1; b = b * (x%10); x = x/10; } cout << a << endl << b endl; } |
алг нач цел x, a, b ввод x a: = 0; b: = 1 нц пока x>0 a : = a + 1 b : = b * mod(x,10) x : = div(x,10) кц вывод a, нс, b кон |
Python | |
x = int(input()) a = 0 b = 1 while x > 0: a += 1 b *= x % 10 x = x // 10 print(a) print(b) |
Укажите наименьшее из таких чисел x, при вводе которых алгоритм печатает сначала 3, а потом 14.
Источник: Яндекс: Тренировочная работа ЕГЭ по информатике. Вариант 2.
Ниже на четырёх языках записан алгоритм. Получив на вход число x, этот алгоритм печатает два числа: a и b. Укажите наименьшее из таких чисел x, при вводе которых алгоритм печатает сначала 2, а потом 21.
Бейсик | Паскаль |
---|---|
DIM X, A, B AS INTEGER INPUT X A=0: B=1 WHILE X > 0 A = A+1 B = B*(X MOD 10) X = X 10 WEND PRINT A PRINT B |
var x, a, b: integer; begin readln(x); a:=0; b:=1; while x>0 do begin a:=a+1; b:=b*(x mod 10); x:= x div 10 end; writeln(a); write(b); end. |
Си++ | Алгоритмический язык |
#include <iostream> using namespace std; int main() { int x, a, b; cin >> x; a=0; b=1; while (x>0){ a=a+1; b=b*(x%10); x= x/10; } cout << a << endl << b endl; } |
алг нач цел x, a, b ввод x a:=0; b:=1 нц пока x>0 a:=a+1 b:=b*mod(x,10) x:=div(x,10) кц вывод a, нс, b кон |
Python | |
x = int(input()) a = 0 b = 1 while x > 0: a += 1 b *= (x % 10) x //= 10 print(a) print(b) |
Источник: Демонстрационная версия ЕГЭ—2013 по информатике.
Ниже на 5-ти языках записан алгоритм. Получив на вход число x, этот алгоритм печатает два числа a и b.
Бейсик | Паскаль |
---|---|
DIM X, A, B AS INTEGER INPUT X A=0: B=0 WHILE X > 0 A = A+1 B = B +(X MOD 10) X = X 10 WEND PRINT A PRINT B |
var x, a, b: integer; begin readln(x); a:=0; b:=0; while x>0 do begin a:=a+1; b:=b+(x mod 10); x:=x div 10; end; writeln(a); write(b); end. |
Си++ | Алгоритмический язык |
#include <iostream> using namespace std; int main() { int x, a, b; cin >> x; a=0; b=0; while (x>0){ a=a+1; b=b + (x%10); x= x/10; } cout << a << endl << b << endl; } |
алг нач цел x, a, b ввод x a:=0; b:=0 нц пока x>0 a:=a+1 b:=b+mod(x,10) x:=div(x,10) кц вывод a, нс, b кон |
Python | |
x = int(input()) a = 0 b = 0 while x > 0: a += 1 b += x % 10 x = x // 10 print(a) print(b) |
Укажите наибольшее из таких чисел x, при вводе которых алгоритм печатает сначала 2, а потом 8.
Ниже на 5-ти языках записан алгоритм. Получив на вход число х, этот алгоритм печатает два числа а и Ь. Укажите наибольшее из таких чисел х, при вводе которых алгоритм печатает сначала 2, а потом 35.
Бэйсик | Паскаль |
---|---|
DIM X, А, В AS INTEGER INPUT X А=0 : B=1 WHILE X > 0 А = A+1 В = В * (X MOD 10) X = X 10 WEND PRINT А PRINT В |
var х, а, b: integer; begin readln (x); а := 0 ; b := 1; while x>0 do begin a := a + 1; b : = b * (x mod 10); х := x div 10; end; writeln(a); write(b); end. |
Си++ | Алгоритмический |
#include <iostream> using namespace std; int main() { int x, a, b; cin >> x; a=0; b=1; while (x>0) { a = a+1; b = b * (x%10); x = x/10; } cout << a << endl << b endl; } |
алг нач цел х, a, b ввод x а := 0; Ь := 1 нц пока х>0 а := а+1 b := b * mod(х, 10) х := div(х, 10) кц вывод а, нc, b кон |
Python | |
x = int(input()) a = 0 b = 1 while x > 0: a += 1 b *= x % 10 x = x // 10 print(a) print(b) |
Ниже на 5-ти языках записан алгоритм. Получив на вход число х, этот алгоритм печатает два числа а и Ь. Укажите наибольшее из таких чисел х, при вводе которых алгоритм печатает сначала 2, а потом 21.
Бэйсик | Паскаль |
---|---|
DIM X, А, В AS INTEGER INPUT X А=0 : B=1 WHILE X > 0 А = A+1 В = В*(X MOD 10) X = X 10 WEND PRINT А PRINT В |
var х, а, b: integer; begin readln (x) ; а: = 0 ; b : = 1; while x>0 do begin а : = a + 1 ; b : = b*(x mod 10) ; х : = x div 10; end; writeln(a); write(b); end. |
Си++ | Алгоритмический |
#include <iostream> using namespace std; int main() { int x, a, b; cin >> x; a=0; b=1; while (x>0){ a = a+1 ; b = b*(x%10); x = x /10 ; } cout << a << endl << b endl; } |
алг нач цел х, a, b ввод x а : = 0; Ь : = 1 нц пока х>0 а := а+1 b := b*mod(х,10) х:=div(х,10) кц вывод а, нc, b кон |
Python | |
x = int(input()) a = 0 b = 1 while x > 0: a += 1 b *= x % 10 x = x // 10 print(a) print(b) |
Ниже на 5-ти языках программирования записан алгоритм. Получив на вход число х, этот алгоритм печатает два числа а и Ь. Укажите наименьшее из таких чисел х. при вводе которых алгоритм печатает сначала 3. а потом 7.
Бейсик | Паскаль |
---|---|
DIM X, A, B AS INTEGER INPUT X A=0: B=0 WHILE X > 0 A = A + 1 B = B + (X MOD 10) X = X 10 WEND PRINT A PRINT B |
var x, a, b: integer; begin readln(x); a: = 0; b: = 0; while x>0 do begin a : = a + 1; b : = b + (x mod 10); x : = x div 10 end; writeln(a); write(b); end. |
Си++ | Алгоритмический язык |
#include <iostream> using namespace std; int main() { int x, a, b; cin >> x; a = 0; b = 0; while (x>0){ a = a + 1; b=b+(x%10); x = x / 10; } cout << a << endl << b endl; } |
алг нач цел x, a, b ввод x a: = 0; b: = 0 нц пока x>0 a : = a + 1 b : = b + mod(x,10) x : = div (x,10) кц вывод a, нс, b кон |
Python | |
x = int(input()) a = 0 b = 0 while x > 0: a += 1 b += x % 10 x = x // 10 print(a) print(b) |
Ниже на 5-ти языках записан алгоритм. Получив на вход число x, этот алгоритм печатает два числа a и b. Укажите наименьшее из таких чисел x, при вводе которых алгоритм печатает сначала 6, а потом 5.
Бэйсик | Паскаль |
---|---|
DIM X, A, B AS INTEGER INPUT X A = 0: B = 0 WHILE X > 0 A = A + 2 B = B + (X MOD 10) X = X / 10 WEND PRINT A PRINT B |
var x, a, b: integer; begin readln(x); a := 0; b := 0; while x>0 do begin a := a + 2; b := b + (x mod 10); x:= x div 10; end; writeln(a); write(b); end. |
Си++ | Алгоритмический |
#include <iostream> using namespace std; int main() { int x, a, b; cin >> x; a = 0; b = 0; while (x > 0){ a = a + 2; b = b + (x%10); x = x / 10; } cout << a << endl << b endl; } |
алг нач цел x, a, b ввод x a:=0; b:=0 нц пока x > 0 a := a + 2 b := b+mod(x,10) x := div(x,10) кц вывод a, нс, b кон |
Python | |
x = int(input()) a = 0 b = 0 while x > 0: a += 2 b += x % 10 x = x // 10 print(a) print(b) |
Ниже на 4-х языках записан алгоритм. Получив на вход число x, этот алгоритм печатает два числа a и b. Укажите наименьшее из таких чисел x, при вводе которых алгоритм печатает сначала 6, а потом 9.
Бэйсик | Паскаль |
---|---|
DIM X, A, B AS INTEGER INPUT X A = 0: B = 0 WHILE X > 0 A = A + 2 B = B + (X MOD 10) X = X 10 WEND PRINT A PRINT B |
var x, a, b: integer; begin readln(x); a := 0; b := 0; while x>0 do begin a := a + 2; b := b + (x mod 10); x:= x div 10; end; writeln(a); write(b); end. |
Си++ | Алгоритмический |
#include <iostream> using namespace std; int main() { int x, a, b; cin >> x; a = 0; b = 0; while (x > 0){ a = a + 2; b = b + (x%10); x = x / 10; } cout << a << endl << b endl; } |
алг нач цел x, a, b ввод x a:=0; b:=0 нц пока x > 0 a := a + 2 b := b+mod(x,10) x := div(x,10) кц вывод a, нс, b кон |
Python | |
x = int(input()) a = 0 b = 0 while x > 0: a += 2 b += (x % 10) x //= 10 print(a) print(b) |
Ниже на пяти языках записан алгоритм. Получив на вход число х, этот алгоритм печатает два числа а и b. Укажите наибольшее из таких чисел x, при вводе которых алгоритм печатает сначала 2, а потом 13.
Бейсик | Паскаль |
---|---|
DIM X, А, В AS INTEGER INPUT X А = 0; В = 0 WHILE X > 0 А = А+1 В = В + (X MOD 100) X = Х100 WEND PRINT А PRINT В |
var х, a, b: integer; begin readln(х); а : = 0; b : = 0; while х > 0 do begin а := а+1; b := b + (х mod 100) ; х := х div 100; end; writeln(a); write(b); end. |
Си++ | Алгоритмический язык |
#include <iostream> using namespace std; int main() { int x, a, b; cin >> x; a = 0; b = 0; while (x > 0) { a = a+1; b = b + (x%100); x = x/100; } cout << a << endl << b endl; } |
алг нач цел x, a, b ввод x a:=0; b:=0 нц пока x > 0 a := a+1 b := b+mod(x,100) x := div(x,100) кц вывод а, не, b кон |
Python | |
x = int(input()) a = 0 b = 0 while x > 0: a += 1 b += (x % 100) x //= 100 print(a) print(b) |
Ниже на пяти языках записан алгоритм. Получив на вход число х, этот алгоритм печатает два числа а и b. Укажите наибольшее из таких чисел x, при вводе которых алгоритм печатает сначала 2, а потом 17.
Бейсик | Паскаль |
---|---|
DIM X, А, В AS INTEGER INPUT X А = 0: В = 0 WHILE X > 0 А = А+1 В = В + (X MOD 100) X = Х100 WEND PRINT А PRINT В |
var х, a, b: integer; begin readln(х); а : = 0; b : = 0; while х > 0 do begin а := а+1; b := b + (х mod 100); х := х div 100; end; writeln(a); write(b); end. |
Си++ | Алгоритмический язык |
#include <iostream> using namespace std; int main() { int x, a, b; cin >> x; a = 0; b = 0; while (x > 0) { a = a+1; b = b + (x%100); x = x/100; } cout << a << endl << b endl; } |
алг нач цел x, a, b ввод x a:=0; b:=0 нц пока x > 0 a := a+1 b := b+mod(x,100) x := div(x,100) кц вывод а, нс, b кон |
Python | |
x = int(input()) a = 0 b = 0 while x > 0: a += 1 b += (x % 100) x //= 100 print(a) print(b) |
Ниже на пяти языках программирования записан алгоритм. Получив на вход число x, этот алгоритм печатает два числа: a и b. Укажите наибольшее из таких чисел x, при вводе которых алгоритм печатает сначала 2, а потом 11.
Бейсик | Паскаль |
---|---|
DIM X, A, B AS INTEGER INPUT X A = 0: B = 0 WHILE X > 0 A = A + 1 B = B + (X MOD 10) X = X 10 WEND PRINT A PRINT B |
var x, a, b: integer; begin readln(x); a := 0; b := 0; while x>0 do begin a:= a + 1; b:= b + (x mod 10); x:= x div 10 end; writeln(a); write(b); end. |
Си++ | Алгоритмический язык |
#include <iostream> using namespace std; int main() { int x, a, b; cin >> x; a=0; b=0; while (x>0){ a=a+1; b=b+(x%10); x=x/10; } cout << a << endl << b << endl; } |
алг нач цел x, a, b ввод x a := 0; b := 0 нц пока x>0 a := a + 1 b := b + mod(x,10) x := div(x,10) кц вывод a, нс, b кон |
Python | |
x = int(input()) a = 0 b = 0 while x > 0: a += 1 b +=x % 10 x //= 10 print(a) print(b) |
Источник: ЕГЭ по информатике 05.05.2014. Досрочная волна. Вариант 1.
Ниже на пяти языках записан алгоритм. Получив на вход число x, этот алгоритм печатает два числа a и b. Укажите такое наибольшее число x, что при вводе x алгоритм печатает сначала 2, а потом 0.
Бейсик | Паскаль |
---|---|
DIM X, A, B AS INTEGER INPUT X A = 0: B = 1 WHILE X > 0 A = A + 1 B = B*(X MOD 10) X = X10 WEND PRINT A PRINT B |
program B08; var x, a, b: integer; begin readln(x); a := 0; b := 1; while x > 0 do begin a := a+1; b := b*(x mod 10); x := x div 10; end; writeln(a); write(b); end. |
Си++ | Алгоритмический |
#include <iostream> using namespace std; int main() { int x, a, b; cin >> x; a = 0; b = 1; while (x > 0){ a = a+1; b = b*(x%10); x = x/10; } cout << a << endl << b endl; } |
алг нач цел x, a, b ввод x a := 0; b := 1 нц пока x > 0 a := a+1 b := b*mod(x,10) x := div(x,10) кц вывод a, нс, b кон |
Python | |
x = int(input()) a = 0 b = 1 while x > 0: a += 1 b *=x % 10 x //= 10 print(a) print(b) |
Всего: 320 1–20 | 21–40 | 41–60 | 61–80 | 81–100 | 101–120 …
13 ноября, 2015 Andrey K
В данной статье мы рассмотрим операторы mod и div, их применение при решении задач. Рассмотрим несколько примеров с решением, а также задачи для самостоятельного выполнения.
Успехов вам в программировании!!!
- С помощью mod мы получаем остаток от деления числа a на число b.
a:= 21; b:=8; s:=21 mod 8;
Переменная s будет равна 5.
- С помощью оператора div мы получим целую часть от деления числа a на число b
a:= 21; b:=8; s:=21 div 8;
Переменная s будет равна 2.
Использование mod при решении задач
- Чаще всего оператор mod используется для определения кратности числа и используется в условии (оператор IF)
Задача: определить, является ли число, введенное с клавиатуры, четным.
Чтобы ответить на этот вопрос нужно поделить число a с помощью mod на 2 (a mod 2) и сравнить это значение с нулем. Условие будет выглядеть так: a mod 2 = 0
var a:integer; begin readln(a); // вводим число if a mod 2 = 0 then writeln('введенное число - четное'); // если условие выполняется - выводим на экран сообщение end.
Итак, чтобы узнать: делится ли число a на число b без остатка, нужно воспользоваться условием:
Оператор mod
- Также оператор mod используется для определения последней цифры числа
Задача:умножить последнюю цифру числа на 10 и результат вывести на экран.
Чтобы поместить последнюю цифру числа a в некоторую переменную необходимо поделить это число с помощью mod на 10. Получим: b:=a mod 10 — в переменной b окажется последняя цифра числа.
var a,b,res:integer;
begin
readln(a);
b:= a mod 10; //присваиваем переменной b последнюю цифру числа a
res:=b*10; // умножаем b на 10
writeln(res); // выводим результат на экран
end.
Если мы хотим отделить 2-е последние цифры числа, то должны делить с помощью mod на 100; если 3 — на 1000 и т.д.
Чтобы узнать, оканчивается ли число a на цифру b необходимо воспользоваться условием:
Задача: если введенное с клавиатуры число оканчивается на 5 и делится на 7, то вывести «YES» иначе «NO»
var a:integer; begin readln(a); if (a mod 7 = 0) and (a mod 10 = 5) then writeln('YES') else writeln('NO'); end.
С помощью рассмотренных условий и цикла со счетчиком можно решить следующую задачу:
посчитать количество чисел, которые кратны 9 и оканчиваются на 5 в диапазоне от 1 до 500
var i, n:integer; begin for i:=1 to 500 do if (i mod 9 = 0) and (i mod 10 = 5) then n:=n+1; writeln('Количество чисел = ', n); end.
Использование оператора div при решении задач
Задача: дано трехзначное число. Выяснить, является ли оно палиндромом («перевертышем»), т.е. таким числом, десятичная запись которого читается одинаково слева направо и справа налево.
Отделить первую цифру числа можно, поделив его с помощью div на 100.
Отделить последнюю цифру можно, поделив его с помощью mod на 10. Вторая цифра нам не нужна для решения задачи, т.к. от нее не зависит, будет ли число палиндромом.
var a, a1, a3:integer; begin readln(a); a1:=a div 100; a3:= a mod 10; if a1=a3 then writeln('Число ', a,' является палиндромом'); end.
Задачи для самостоятельного выполнения:
- Дано трехзначное число. Определить:
- является ли сума его цифр двузначным числом
- является ли произведение его цифр трехзначным числом
- больше ли числа a произведение его цифр
- кратна ли пяти сумма его цифр
- кратна ли сумма его цифр числу a
- Дано четырехзначное число. Определить:
- равна ли сумма двух первых его цифр сумме двух его последних цифр
- кратна ли трем сума его цифр
- кратно ли четырем произведение его цифр
- кратно ли произведение его цифр числу а
Вы можете оставить комментарий, или ссылку на Ваш сайт.
Оставить комментарий
На чтение 3 мин. Опубликовано 04.07.2020
В нашей статье мы разберем такие операции, как div и mod в Паскале. Сейчас вы узнаете, что это такое и зачем эти операции нужны.
Вообще, div и mod очень похожи на обычное деление, которому нас учат в школе. Но если они зачем-то существуют, значит, все-таки отличия есть. И уже в самом начале очень хочется отметить, что обе операции работают только с целыми числами (integer).
Оператор div в Pascal
На самом деле здесь все довольно просто. Div применяется для поиска целой части от деления.
Приведем в пример код, чтобы разобраться:
program enteryourname1;
uses crt;
var
n : integer;
begin
n := 9;
n := n div 4;
end.
В итоге наше n будет равняться двум. Если делить 9 на 4, то выходит 2,25. То есть, применяя операцию div в Паскале, вы получите результат до запятой (целую часть числа).
Оператор mod в Pascal
Данная операция действует немного наоборот — она уже ищет остаток от деления. Бывает, что новички в Паскале ошибочно думают, что mod ищет дробную часть. Нет, это не так.
Возьмем в пример все тот же код:
program enteryourname2;
uses crt;
var
n : integer;
begin
n := 9;
n := n mod 4;
end.
В итоге мы получаем n, которое равно единице. Как так получилось? Когда мы делим 9 на 4, мы можем взять два раза по 4 (получается 8). Но у нас остается единица, которая не делится на 4. Такую вот “единицу” и будет искать mod, или, говоря по-другому, остаток от деления ваших чисел.
Вообще, нередко mod в Паскале используют для того, чтобы определить кратности чисел. Обратите внимание, что число является кратным, если его остаток равняется нулю.
Использование оператора div и mod при решении задач
Мы приведем несколько примеров использования этой программы для того, чтобы вам было еще легче разобраться, как это работает.
program enteryourname3;
uses crt;
var A,B,C: integer;
begin
clrscr;
A := 13;
B := 5;
C := A div B;
writeln (‘13 div 5 = ‘, C);
C := A mod B;
writeln (‘13 mod 5 = ‘, C);
readln;
end.
Таким образом, используя div, мы получим ответ 2 (13 разделить на 5 равняется 2,6; нам же нужна только целая часть). А используя mod, получаем результат 3 (остаток от деления).
Вот еще один пример:
program enteryourname4;
uses crt;
var A,B,C: integer;
begin
clrscr;
A := 290;
B := 11;
C := A div B;
writeln (‘290 div 11 = ‘, C);
C := A mod B;
writeln (‘290 mod 11 = ‘, C);
readln;
end.
Конечно, программа все сама посчитает. Но еще раз уточним: здесь div будет равняться 26 (берем только целую часть), а mod — 4 (остаток от деления).
Надеемся, мы ответили на ваш вопрос, что же значат mod и div в программе Pascal, и тем самым смогли облегчить вашу работу в этой программе. Свои предложения вы можете оставить в комментариях.
Автор материалов — Лада Борисовна Есакова.
В этой задаче используется описание алгоритмов на языках программирования.
Основными используемыми конструкциями являются конструкции ветвления и циклов.
Конструкция ветвления в языке Паскаль
Полная |
Неполная |
if <логическое выражение> then
<оператор1> |
if <логическое выражение> then
<оператор1>; |
При этом оператор может быть простым, а может быть составным.
Составной оператор имеет структуру:
begin
<Последовательность_операторов>
end
Конструкция циклов в языке Паскаль
Цикл со счетчиком (или цикл for)
Этот цикл используется, когда число повторений не связано с тем, что происходит в теле цикла. Т.е. количество повторений может быть вычислено заранее.
В заголовке цикла указываются два значения. Первое значение присваивается так называемой переменной-счетчику, от этого значения начинается отсчет количества итераций (повторений). Отсчет идет всегда с шагом равным единице. Второе значение указывает, при каком значении счетчика цикл должен остановиться. Другими словами, количество итераций цикла определяется разностью между вторым и первым значением плюс единица. В Паскале тело цикла не должно содержать выражений, изменяющих счетчик.
Цикл for существует в двух формах:
for <счетчик>:=<значение> to <конечное_значение> do
<тело_цикла>;
for <счетчик>:=<значение> downto <конечное_значение> do
<тело_цикла>;
Счетчик – это переменная любого из перечисляемых типов (целого, булевого, символьного, диапазонного, перечисления). Начальные и конечные значения могут быть представлены не только значениями, но и выражениями, возвращающими совместимые с типом счетчика типы данных. Если между начальным и конечным выражением указано служебное слово to, то на каждом шаге цикла значение параметра будет увеличиваться на единицу. Если же указано downto, то значение параметра будет уменьшаться на единицу.
Цикл с предусловием (или цикл while)
Цикл while является циклом с предусловием. В заголовке цикла находится логическое выражение. Если оно возвращает true, то тело цикла выполняется, если false – то нет.
while <логическое_выражение> do
<тело_цикла>;
Когда тело цикла было выполнено, то ход программы снова возвращается в заголовок цикла. Условие выполнения тела снова проверяется (находится значение логического выражения). Тело цикла выполнится столько раз, сколько раз логическое выражение вернет true. Поэтому очень важно в теле цикла предусмотреть изменение переменной, фигурирующей в заголовке цикла, таким образом, чтобы когда-нибудь обязательно наступала ситуация false. Иначе произойдет зацикливание.
Цикл с постусловием (или цикл repeat)
Цикл while может не выполниться ни разу, если логическое выражение в заголовке сразу вернуло false. Однако, бывают ситуации, когда тело цикла должно выполниться хотя бы один раз, независимо от того, что вернет логическое выражение. В таком случае используется цикл repeat – цикл с постусловием.
В цикле repeat логическое выражение стоит после тела цикла. В случае true происходит выход из цикла, в случае false – его повторение:
repeat <тело_цикла>
until <логическое_выражение>;
Тело цикла может включать в себя другой цикл. Количество вложенных циклов не ограничено.
Операции div и mod
Операция div возвращает целочисленный результат деления. При этом дробная часть будет отброшена. X div Y вернет целую часть от деления X на Y.
Например, после работы оператора z := 55 div 6, z будет равно 9.
Операция mod возвращает остаток от деления деления. X mod Y вернет остаток от деления X на Y.
Например, после работы оператора z := 55 mod 6, z будет равно 1.
Поиск наименьшего числа
Пример 1.
Ниже на пяти языках программирования записан алгоритм. Получив на вход число x, этот алгоритм печатает числа: a и b. Укажите наименьшее положительное пятизначное число x, при вводе которого алгоритм печатает сначала 6, а потом 3.
Бейсик |
Python |
DIM X, Y, A, B AS INTEGER
A = 0 B = 10 INPUT X WHILE X > 0 Y = X MOD 10 X = X 10 IF Y > A THEN A = Y IF Y < B THEN B = Y WEND PRINT A PRINT B |
a = 0
b = 10 x = int(input()) while x > 0: y = x % 10 x = x // 10 if y > a: a = y if y < b: b = y print(a) print(b) |
Паскаль |
Алгоритмический язык |
var x, y, a, b: integer;
begin a := 0; b := 10; readln(x); while x > 0 do begin y := x mod 10; x := x div 10 if y > a then a := y; if y < b then b := y; end; writeln(a); writeln(b) end. |
алг
нач цел x, y, a, b a := 0 b := 10 ввод x нц пока x > 0 y := mod(x, 10) x := div(x, 10) если y > a то a := y все если y < b то b := y все кц вывод a, нс, b кон |
Си |
|
#include <stdio.h>
int main() { int x, y, a, b; a = 0; b = 10; scanf(«%d», &x); while (x > 0) { y = x % 10; x = x / 10; if (y > a) a = y; if (y < b) b = y; } printf(«%dn%dn», a, b); } |
Решение:
Т. к. оператор div возвращает целую часть от деления, то при делении на 10 это равносильно отсечению последней цифры. Значит, цикл выполниться пять раз.
В переменную a записывается остаток от деления числа x на 10 при условии, что этот остаток больше числа уже записанного в переменной a. В переменную b записывается остаток от деления числа x на 10 при условии, что этот остаток меньше числа уже записанного в переменной b. Таким образом, в переменную a записывается наибольшая цифра числа x, а в переменную b — наименьшая. Итак, нужно найти наименьшее пятизначное число, у которого наименьшая цифра равна 3, а наибольшая — равна 6. Такое число:33336.
Ответ: 33336
Пример 2.
Ниже на пяти языках программирования записан алгоритм. Получив на вход число x, этот алгоритм печатает число M. Известно, что x > 100. Укажите наименьшее такое (т.е. большее 100) число x, при вводе которого алгоритм печатает 26.
Решение:
В теле цикла числа M и L уменьшаются, пока не станут равными. Поскольку в итоге напечатано 26, значит, в конце программы оба числа равны 26. Рассмотрим изменение этой пары чисел в обратном порядке (при этом не знаем, какое именно число M, а какое L):
(26; 26) – (52; 26) – (78; 52) – (130; 52)
Если 130 – это L в начале работы (равное x), то т.к. оно четное, M в начале работы должно быть 52. Условие выполнено для пары (130; 52), значит искомое число 130.
Ответ: 130
Поиск наибольшего числа
Пример 3.
Ниже записана программа. Получив на вход число x , эта программа печатает два числа, L и M. Укажите наибольшее из таких чисел x, при вводе которых алгоритм печатает сначала 3, а потом 7.
var x, L, M: integer;
begin
readln(x);
L:=0; M:=0;
while x > 0 do begin
L:= L + 1;
if x mod 2 = 0 then
M:= M + (x mod 10) div 2;
x:= x div 10;
end;
writeln(L); write(M);
end.
Решение:
На каждом шаге от десятичной записи x отсекается последняя цифра до тех пор, пока все цифры не будут отсечены, то есть x не станет равно 0. В переменной L накапливается число выполнений цикла. L=3, значит цикл выполнился 3 раза, значит исходное число x трехзначное.
Теперь рассмотрим оператор изменения M:
if x mod 2 = 0 then
M:= M + (x mod 10) div 2;
end;
M увеличивается только в случае, если текущее значение x четное, т.е. если четная его последняя цифра. В этом случае к текущему значению M прибавляется целочисленный результат деления последней цифры текущего значения x на 2.
Таким образом, М – это сумма половин четных цифр числа x.
Значит, нам нужно найти наибольшее трехзначное число х, сумма четных цифр которого равна 14.
Наибольшее такое число 986.
Ответ: 986
Пример 4.
Ниже на пяти языках записан алгоритм. Получив на вход число x, этот алгоритм печатает два числа a и b. Укажите наибольшее из таких чисел x, при вводе которого алгоритм печатает сначала 2, а потом 5.
Бейсик |
Python |
DIM X, A, B AS INTEGER
INPUT X A = 0: B = 1 WHILE X > 0 A = A+1 B = B * (X MOD 100) X = X100 WEND PRINT A PRINT B |
x = int(input())
a, b = 0, 1 while x > 0: a = a + 1 b = b * x%100 x = x//100 print(a) print(b) |
Паскаль |
Алгоритмический язык |
var x, a, b: integer;
begin readln(x); a := 0; b := 1; while x > 0 do begin a := a+1; b := b*(x mod 100); x := x div 100; end; writeln(a); write(b); end. |
алг
нач цел x, a, b ввод x a:=0; b:=1 нц пока x > 0 a := a+1 b := b*mod(x,100) x := div(x,100) кц вывод a, нс, b кон |
Си |
|
#include <stdio.h>
void main() { int x, a, b; scanf(«%d», &x); a = 0; b = 1; while (x > 0) { a = a+1; b = b * (x%100); x = x/100; } printf(«%dn%d», a, b); } |
Решение:
Т. к. оператор div возвращает целую часть от деления, то при делении на 100 это равносильно отсечению последних двух цифр.
На каждом шаге от десятичной записи x отсекается две последних цифры до тех пор, пока все цифры не будут отсечены, то есть x не станет равно 0.
В переменной a накапливается количество выполнений цикла, a=2, значит число x трехзначное или четырехзначное.
В переменной b накапливается произведение двух чисел: числа, состоящего из последних двух цифр числа х и первой цифры числа х, если число x трехзначное (или двух первых цифр, если число x четырехзначное).
Т.к. b=5, то второй из множителей не может быть двузначным, т.е. число x трехзначное. Наибольшее такое число равно 501.
Ответ: 501
Благодарим за то, что пользуйтесь нашими статьями.
Информация на странице «Задача №20. Работа с циклами и условными операторами.» подготовлена нашими редакторами специально, чтобы помочь вам в освоении предмета и подготовке к ЕГЭ и ОГЭ.
Чтобы успешно сдать нужные и поступить в высшее учебное заведение или техникум нужно использовать все инструменты: учеба, контрольные, олимпиады, онлайн-лекции, видеоуроки, сборники заданий.
Также вы можете воспользоваться другими материалами из разделов нашего сайта.
Публикация обновлена:
09.03.2023
ЕГЭ информатика 16 задание разбор, теория, как решать.
Рекурсивные алгоритмы, (П) — 1 балл
Е16.28 Чему равно значение выражения F(2023) / F(2020)?
Алгоритм вычисления значения функции F(n), где n – натуральное число, задан следующими соотношениями: F(n) = 1 при n = 1; F(n) = n × F(n − 1), если n > 1. Чему равно значение выражения F(2023) / F(2020)? Ответ: Демонстрационный вариант ЕГЭ 2023 г. – задание №16
Читать далее
Е16.27 Укажите наименьшее значение a, для которого F(a, 0) = 1392781243
Обозначим частное от деления целочисленного натурального числа a на натуральное число b как a div b, а остаток как a mod b. Например, 13 div 3 = 4, 13 mod 3 = 1. Алгоритм вычисления значения функции F(a, b), где a и b – целые неотрицательные числа, задан следующими соотношениями: F(0, b) = b; F(a, …
Читать далее
Е16.26 Чему равно значение функции F(42)?
Алгоритм вычисления значения функции F(n), где n — натуральное число, задан следующими соотношениями: F(n) = 1 при n = 1; F(n) = 3 × n + F(n — 2), если n > 1 и при этом n нечётно, F(n) = 4 × F(n / 2), если n > 1 и при этом n чётно. Чему …
Читать далее
Е16.25 Укажите количество таких значений n < 1 000 000 000, для которых F(n) = 2.
Алгоритм вычисления значения функции F(n), где n – целое неотрицательное число, задан следующими соотношениями: F(0) = 0; F(n) = F(n – 1) + 1, если n нечётно; F(n) = F(n/2), если n > 0 и при этом n чётно. Укажите количество таких значений n < 1 000 000 000, для которых F(n) = 2. СтатГрад …
Читать далее
Е16.24 являющихся результатом вызова функции для значений n в диапазоне [40; 50]
Алгоритм вычисления функции F(n), где n – целое неотрицательное число, задан следующими соотношениями:
F(n) = n + 3, при n ≤ 3 F(n) = F(n – 2) + n, при n > 3 и четном значении F(n—1), F(n) = F(n – 2) + 2· n, при n > 3 и нечетном значении F(n—1) |
Определите сумму значений, являющихся результатом вызова функции для значений n в диапазоне [40; 50]. Ответ: Е. Джобс
Читать далее
Е16.23 F(n) = F(n – 1) – F(n – 2) + 3n, при n > 1 и n – четно
Алгоритм вычисления функции F(n), где n – целое неотрицательное число, задан следующими соотношениями:
F(0) = 1, F(1) = 3 F(n) = F(n – 1) – F(n – 2) + 3n, при n > 1 и n – четно F(n) = F(n – 2) – F(n – 3) + 2n, при n > 1 и n – нечетно |
Чему равно значение функции F(40)? В ответе запишите только целое число Ответ: Е. Джобс
Читать далее
Е16.22 Сколько существует таких чисел n, что 1 ≤ n ≤ 500 и F(n) = 8
Алгоритм вычисления значения функции F(n), где n – целое неотрицательное число, задан следующими соотношениями: F(0) = 0; F(n) = F(n/2), если n > 0 и при этом n чётно; F(n) = 1 + F(n – 1), если n нечётно. Сколько существует таких чисел n, что 1 ≤ n ≤ 500 и F(n) = 8? Ответ: …
Читать далее
Е16.21 F(n) = 1 при n ≤ 1; F(n) = n · F(n – 1) при чётных n > 1;
Алгоритм вычисления функции F(n) задан следующими соотношениями: F(n) = 1 при n ≤ 1; F(n) = n · F(n – 1) при чётных n > 1; F(n) = n + F(n – 2) при нечётных n > 1; Определите значение F(84). Ответ: Тренировочный вариант от 16.11.2020 «Евгений Джобс»
Читать далее
Е16.20 для которых сумма цифр значения F(n) равна 27.
Алгоритм вычисления функции F(n) задан следующими соотношениями: F(n) = n · n + 5 · n + 4, при n > 30 F(n) = F(n+1) + 3 · F(n+4), при чётных n ≤ 30 F(n) = 2 · F(n+2) + F(n+5), при нечётных n ≤ 30 Определите количество натуральных значений n из отрезка [1; 1000], …
Читать далее
Е16.19 F(0) = 0; F(n) = n + F(n – 3), если n > 0 и при этом n mod 3 = 0;
F(0) = 0; F(n) = n + F(n – 3), если n > 0 и при этом n mod 3 = 0; F(n) = n + F(n – (n mod 3)), если n mod 3 > 0. Чему равно значение функции F(25)? Обозначим через a mod b остаток от деления натурального числа a на натуральное …
Читать далее