ЕГЭ по информатике — задание 6

Общая информация

Задание № 6

«Программирование: основные конструкции»

Уровень сложности — базовый,
Требуется использование специализированного программного обеспечения — нет,
Максимальный балл — 1,
Примерное время выполнения — 4 минуты.   
Проверяемые элементы содержания: Знание основных конструкций языка программирования, понятия переменной, оператора присваивания.

На апелляцию не подается.

[свернуть]
Полезные советы

1. Важно учитывать последнее прохождение цикла и не добавлять лишний повтор. 

2. Способы решения:

  • определить количество итераций цикла и на основе этого вычислить результат. Этот способ более быстрый, но более сложный. Для его выполнения требуется умение анализировать текст простой программы без её выполнения».
  • составить таблицу изменения переменных, при выполнении программы — выполнить для нескольких чисел, пока не будет получено подходящее; метод перебора.

3. Задание может быть решено с использованием компьютера или в результате последовательного выполнения всего алгоритма вручную (долго, но способ действенный особенно для тех, кто пока не дружит с программированием, или у кого, по какой-то причине взбунтовалось программное обеспечение).

4. Чтобы не перебирать наобум все числа подряд, проанализируйте сначала условие задачи и представленную программу. Это поможет Вам определить верхнюю или нижнюю планку (а иногда и ту, и другую) для подходящих чисел, тогда время на перебор Вы потратите меньше.

5. После анализа условия просто скопируйте программу и вставьте ее в соответствующее приложение. Список приложений, которыми Вы можете воспользоваться на экзаменационном компьютере, и место их расположения будут указаны в справочных материалах непосредственно на экзамене.

6. Предложите программе для вычисления подходящие на Ваш взгляд числа, перебором найдите число, которое удовлетворяет всем требованиям задания.

7. Аналогично выполняется задание 22.

8. Если у Вас не получилось подружиться с компьютером или программным обеспечением (не важно по какой причине), вычисляйте сами, не бросайте задание!

9. И обязательно все учим английский язык pardon.

[свернуть]
Переводим языки программирования на человеческий язык

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

1. С++

#include <iostream> — подключаем библиотеку;

using namespace std; — задаем пространство имен;

int main — указываем программе, что она должна выдать в ответе целое число;

int s, n; — задаем переменные, которые участвуют в программе;

cin >> s; — пользователь вводит значение переменной s;

s =s/10; — формула, по которой рассчитывается новое значение S;

n = 1 ; — начальное значение переменной n;

while (s<51)  — начало цикла «пока», выполняется до соблюдения условия, которое указано в скобках;

 s=s+5; n=n*2; — формулы для расчета переменных внутри цикла;

cout<<n; — вывод найденного значения n после полного выполнения цикла (цикл перестает выполняться, если нарушено условие его выполнения).

2. .

[свернуть]
Образцы решения

страница в работе

1. (ЕГЭ-2021. Демоверсия.) Определите, при каком наибольшем введённом значении переменной s программа выведет число 64. Для Вашего удобства программа представлена на четырёх языках программирования.

Си++ Python
#include <iostream>
using namespace std;
int main() {
    int s, n;
    cin >> s;
    s =s/10;
    n = 1 ;
    while (s<51) { 
        s=s+5;
        n=n*2; 
    }
    cout<<n<<endl;
    return 0;
}
s = int(input())
s = s // 10
n = 1
while s < 51:
    s =s+5
    n =n*2
print(n)

 

Паскаль Алгоритмический язык
var s, n: integer;
begin
    readln (s);
    s:=s div 10;
    n:=1;
    while s<51 do
    begin
        s:=s+5;
        n:=n*2
    end;
    writeln(n)
end.
алг
нач
    цел n, s
    ввод s
    s:=div(s,10)
    n := 1
    нц пока s<51
        s:=s+5
        n:=n*2
    кц
    вывод n
кон
Ответ: 259.

2. (ЕГЭ-2021. Досрочная волна.) Определите, при каком наибольшем введённом значении переменной s программа выведет число 64. Для Вашего удобства программа представлена на четырёх языках программирования.

Python Си++
s = int(input())
n = 1
while s < 47:
    s=s+4
    n=n*2
print(n)

 

#include <iostream>
using namespace std;
int main()
{
    int s, n;
    cin >> s;
    n = 1;
    while(s<47) { 
        s =s+4; 
        n =n*2; 
    }
    cout << n << endl;
    return 0;
}
Паскаль Алгоритмический язык
var s,n:integer;
begin
    readln(s);
    n := 1;
    while s<47do      
    begin
        s:=s+4;
        n:=n*2
    end;
    writeln(n)
end.
алг
нач
    цел n, s
    ввод s
    n:=1
    нц пока s<47 
        s:=s+4
        n:=n*2
    кц
    вывод n
кон
Ответ: 26.

[свернуть]
Тренировочные задания

1. (ЕГЭ-2021. Основная волна.) Какое максимальное значение переменной s, подаваемое на вход программе, для которого в результате работы программы на экран будет выведено значение 64? Для Вашего удобства программа представлена на четырёх языках программирования.

Python С++
n = 1024
s = int(input())
while s >= 5:
    s = s - 5
    n = n // 2
print(n)

 

#include <iostream>
using namespace std;
int main()
{
    int n, s;
    n = 1024;
    cin >> s;
    while(s >= 5) {
        s = s - 5;
        n = n / 2;
    }
    cout << n;
    return 0;
}
Паскаль Алгоритмический язык
var n, s: integer;
begin
    n := 1024;
    readln(s);
    while s >= 5 do begin
        s := s - 5;
        n := n div 2
    end;
    writeln(n)
end.
алг
нач
    цел s, n
    n := 1024
    ввод s
    нц пока s >= 5
        s := s - 5
        n := div(n, 2)
    кц
    вывод n
кон
Ответ: 24.

2. (ЕГЭ-2022. Досрочная волна.) Определите, при каком наименьшем введённом значении переменной s программа выведет число 32. Для Вашего удобства программа представлена на четырёх языках программирования.

Паскаль Python
var s, n: integer;
begin
    readln (s);
    s := (s − 21) div 10;
    n := 1;
    while s > 0 do
    begin
        n := n * 2;
        s := s − n;
    end;
    writeln(n)
end.
s = int(input())
s = (s − 21) // 10
n = 1
while s > 0:
    n = n * 2
    s = s - n
print(n)

 

Алгоритмический язык С++
алг
нач
    цел n, s
    ввод s
    s := div( (s − 21), 10)
    n := 1
    нц пока s > 0
        n := n * 2
        s := s − n
    кц
    вывод n
кон
#include <iostream>
using namespace std;
int main() {
    int s, n;
    cin >> s;
    s = (s − 21) / 10;
    n = 1 ;
    while (s > 0) { 
        n = n * 2;
        s = s − n; 
    }
    cout << n << endl;
    return 0;
}
Ответ: 331.

[свернуть]