Главная » 2017 » Май » 6 » Разбор заданий №24.
12:33
Разбор заданий №24.
Задание №1.
Требовалось написать программу, при выполнении которой с клавиатуры вводится натуральное число N (гарантируется, что 10 ≤ N ≤ 108) и выводится двузначное число, образованное двумя его первыми (старшими) цифрами. Например, при N = 2014 надо вы­ве­сти 20. Ученик написал такую программу:



Последовательно выполните следующее:

1. Напишите, что выведет эта программа при вводе числа 2014.
2. Приведите пример числа, при вводе которого программа выдаст верный ответ.
3. Найдите в программе все ошибки (их может быть одна или несколько). Для каждой ошибки выпишите строку, в которой она допущена, и приведите эту же строку в исправленном виде. Обратите внимание: вам нужно исправить приведённую программу, а не написать свою. Вы можете только заменять ошибочные строки, но не можете удалять строки или добавлять новые. Заменять следует только ошибочные строки: за исправления, внесённые в строки, не содержащие ошибок, баллы будут снижаться.


Ответ на задания ЕГЭ.
Язык программирования Си.


1. 14.
2. 2020.
3. 1)Ошибка: Цикл указан неверно. Строка с ошибкой: while (n>100) Исправление: (n>99)
2)Ошибка: Неверное действие. Строка с ошибкой: n = n % 100 Исправление: n=n/10


Объяснение:


#include <iostream> // - подключение библиотечных функций
using namespace std; // - пространство имен
void main()
{
long int N; // - тип длинного целого числа числа
cin >> N; // - объявление переменной
while (N > 99) // - объявление цикла
{
N=N/ 10;
}
cout << N; // - вывод на экран
cin.get(); cin.get(); // - ожидание ввода
}

Задание №2.
Требовалось написать программу, при выполнении которой с клавиатуры считывается натуральное число x, не превосходящее 1000, и выводится количество единиц в двоичной записи этого числа. Программист торопился и написал программу неправильно. (Ниже для Вашего удобства программа представлена на пяти языках программирования.)



Последовательно выполните следующее:
1. Напишите, что выведет эта программа при вводе числа 15.
2. Приведите пример такого числа x, что, несмотря на ошибки, программа печатает правильный ответ.
3. Найдите все ошибки в этой программе (их может быть одна или несколько). Известно, что каждая ошибка затрагивает только одну строку и может быть исправлена без изменения других строк.


Ответ на задания ЕГЭ.
Язык программирования Си.


1. 2
2. x=1
3. 1) Ошибка: Неверный подсчет количества цифр. Строка с ошибкой: cnt = cnt + x%2 Исправление: cnt=cnt + 1
2) Ошибка: Неверная обработка числа x в цикле. Строка с ошибкой: x = x /10 Исправление: x=x/2

Объяснение:

#include <iostream> // - подключение библиотечных функций
using namespace std; // - пространство имен
void main()
{
int x,cnt=0; // - переменные целых чисел
cin>>x;// - объявление переменной
while (x > 0) // - цикл
{
cnt = cnt + 1;
x = x /2;
}
cout<<x; // - вывод на экран
cin.get();cin.get(); // - ожидание ввода
}
Просмотров: 233 | Добавил: sveycer | Рейтинг: 0.0/0
Всего комментариев: 0
avatar