ЕГЭ_информатика

9 582 задачивместе с подтемами
Число у задачи — рейтинг сложности, слово рядом — насколько она трудна по сравнению с другими задачами такого же типа. Шкалы задач с ответом и задач с кодом между собой не сравниваются. Рядом — счётчики попыток: успешные, неуспешные.
20186#20186
Требовалось написать программу, при выполнении которой с клавиатуры считывается натуральное число N, не превосходящее 109, и выводится количество цифр этого числа.   Программист торопился и написал программу неправильно:  
Паскаль Си
var N: longint;
    count: integer; 
begin
(*)
(1)  readln(N);
(2)  count := 1;
(3)  while N > 1 do begin
(4)    count := count + 1;
(5)    N := N div 10
(6)  end;
(7)  writeln ( count )
end.
#include<stdio.h>
main(){
  int N;
  int count;
(*)
(1)  scanf("%d",&N);
(2)  count = 1;
(3)  while (N > 1) {
(4)    count = count + 1;
(5)    N = N / 10;
(6)  }
(7)  printf("%d", count);
}
Последовательно выполните следующее:
1.       Определите, что выведет программа при вводе числа 123.
2.       Укажите одно число, для которого программа выводит неверный результат.
3.       Найдите все ошибки в этой программе (их может быть одна или несколько). Для каждой ошибки:
а)      выпишите строку, в которой сделана ошибка;
б)      укажите, как надо исправить ошибку -  приведите правильный вариант строки.
Обратите внимание, что требуется найти ошибки в имеющейся программе, а не написать свою, возможно, имеющую другой алгоритм решения. Исправление ошибки должно затрагивать только строку, в которой находится ошибка.

В качестве ответа загрузите исправленную программу, в которой добавлена строка на место (*). Строка должна содержать оператор вывода (с переходом на новую строку после выполнения) номеров строк, в которых допущена ошибка (выводить нужно ТОЛЬКО номера слитно без пробелов и запятых)
например:
Паскаль Си
...
begin
(*)  writeln('123');

... далее исправленная программа

end.
#include<stdio.h>
main(){
...
(*)  printf("123\n");
... далее исправленная программа
}
 

20185#20185
Требовалось написать программу, при выполнении которой с клавиатуры считывается натуральное число N, не превосходящее 109, и выводится минимальную цифру этого числа. Программист торопился и написал программу неправильно:
Паскаль Си
var N: longint;
    digit, min_digit: integer; 
begin
(*)
(1)  readln(N);
(2)  min_digit := 0;
(3)  while N > 0 do begin
(4)    digit := N mod 10;
(5)    if digit > min_digit then
(6)       min_digit := digit;
(7)    N := N div 10
(8)  end;
(9)  writeln ( min_digit)
end.
#include<stdio.h>
main(){
  int N;
  int digit, min_digit ;
(*)
(1)  scanf("%d",&N);
(2)  min_digit = 0;
(3)  while (N > 0) {
(4)    digit = N % 10;
(5)    if (digit > min_digit)
(6)       min_digit = digit;
(7)    N = N / 10;
(8)  }
(9)  printf("%d", min_digit );
}
Последовательно выполните следующее:
1.       Определите, что выведет программа при вводе числа 532 (выполните устно).
2.       Найдите все ошибки в этой программе (их может быть одна или несколько). Для каждой ошибки:
а)      выпишите строку, в которой сделана ошибка;
б)      укажите, как надо исправить ошибку -  приведите правильный вариант строки.
Обратите внимание, что требуется найти ошибки в имеющейся программе, а не написать свою, возможно, имеющую другой алгоритм решения. Исправление ошибки должно затрагивать только строку, в которой находится ошибка.

В качестве ответа загрузите исправленную программу, в которой добавлена строка на место (*). Строка должна содержать оператор вывода (с переходом на новую строку после выполнения) номеров строк, в которых допущена ошибка (выводить нужно ТОЛЬКО номера слитно без пробелов и запятых)
например:
Паскаль Си
...
begin
(*)  writeln('123');

... далее исправленная программа

end.
#include<stdio.h>
main(){
...
(*)  printf("123\n");
... далее исправленная программа
}
 

20184#20184
Требовалось написать программу, при выполнении которой с клавиатуры считывается натуральное число N, не превосходящее 109, и выводится произведение цифр этого числа.   Программист торопился и написал программу неправильно:  
Паскаль Си
var N, product: longint;
    digit: integer; 
begin
(*)
(1)  readln(N);
(2)  product := N mod 10;
(3)  while N >= 10 do begin
(4)    digit := N mod 10;
(5)    product := product * digit;
(6)    N := N div 10
(7)  end;
(8)  writeln ( product )
end.
#include<stdio.h>
main(){
  int N, product;
  int digit;
(*)
(1)  scanf("%d",&N);
(2)  product = N % 10;
(3)  while (N >= 10) {
(4)    digit = N % 10;
(5)    product = product * digit;
(6)    N = N / 10;
(7)  }
(8)  printf("%d", product );
}
Последовательно выполните следующее:
1.       Определите, что выведет программа при вводе числа 532 (выполните задание устно).
2.       Найдите все ошибки в этой программе (их может быть одна или несколько). Для каждой ошибки:
а)      выпишите строку, в которой сделана ошибка;
б)      укажите, как надо исправить ошибку -  приведите правильный вариант строки.
Обратите внимание, что требуется найти ошибки в имеющейся программе, а не написать свою, возможно, имеющую другой алгоритм решения. Исправление ошибки должно затрагивать только строку, в которой находится ошибка.

В качестве ответа загрузите исправленную программу, в которой добавлена строка на место (*). Строка должна содержать оператор вывода (с переходом на новую строку после выполнения) номеров строк, в которых допущена ошибка (выводить нужно ТОЛЬКО номера слитно без пробелов и запятых)
например:
Паскаль Си
...
begin
(*)  writeln('123');

... далее исправленная программа

end.
#include<stdio.h>
main(){
...
(*)  printf("123\n");
... далее исправленная программа
}

20183#20183
В корзине лежит a красных и b синих шаров. Из корзины наугад вынимают n шаров. Требовалось написать программу, которая определяет количество вариантов такого опыта (вариантом считаем пару чисел: количество вынутых красных и синих шаров). Программист торопился и написал программу неправильно: 

Паскаль Си
var n,a,b:integer;
begin
  readln(n, a, b);
  if a + b < n then writeln(0)
  else
    if a < b then
      if a < n then writeln(a+1)
    else
    if b < n then writeln(b+1)
    else writeln(n+1);
end.
#include<stdio.h>
main()
{
  int n,a,b;
  scanf("%d%d%d",&n,&a,&b);
  if (a + b < n) printf("0\n");
  else
    if (a < b) 
      if (a < n) printf("%d\n",a+1);
    else
    if (b < n) printf("%d\n",b+1);
    else printf("%d\n",n+1);
}

Последовательно выполните следующее:
1.       Определите, что выведет программа при n = 5, a = 3, b = 6 (выполните задание устно).
2.       Укажите значения n, a, b, при которых программа выдаёт неправильный ответ (выполните задание устно).
3.       Укажите, как нужно доработать программу, чтобы не было случаев её неправильной работы.

Доработанную программу прикрепите к ответу.

17161#17161
В каталоге находятся файлы со следующими именами:
work2.dot
woo.dat
walk2.doc
ww2w.docx
ww2.doc
w2f.dll
wood.d
Определите, по какой из масок будет выбрана указанная группа файлов:
work2.dot
walk2.doc
ww2w.docx
ww2.doc
1)  w*2*.d*    2)  w*.do?        3) w?2*.?o*      4) w?*2*.*d*
17133#17133
Учитель предложил детям потренироваться в действиях с шестнадцатеричными цифрами и поиграть в такую игру. Учитель предлагает детям три шестнадцатеричные цифры. Ученики должны сначала найти разность первой и второй цифр, потом — разность второй и третьей цифр. Обе разности должны быть записаны, как десятичные числа. Затем эти числа записываются друг за другом в порядке неубывания (правое число больше или равно левому).
Пример. Исходные цифры: A, A, 3. Разности: A16 - A16 = 0; A16 - 316 = 10 – 3 = 7. Результат: 07. Укажите, какое из следующих чисел может быть получено в результате.
1) 122                      2) 212                                3) 313                          4) 3A
17132#17132
Учитель предложил детям потренироваться в действиях с шестнадцатеричными цифрами и поиграть в такую игру. Учитель предлагает детям три шестнадцатеричные цифры. Ученики должны сначала найти разность первой и второй цифр, потом — разность второй и третьей цифр. Обе разности должны быть записаны, как десятичные числа. Затем эти числа записываются друг за другом в порядке невозрастания (правое число меньше или равно левому).
Пример. Исходные цифры: A, A, 3. Разности: A16 - A16 = 0; A16 - 316 = 10 – 3 = 7. Результат: 70. Укажите, какое из следующих чисел может быть получено в результате.
1) 131                      2) 133                                3) 212                          4) D1
17131#17131
Пятизначное число формируется из цифр 0, 1, 3, 5, 7, 9. Известно, что число строится по следующим правилам: а) число делится без остатка на 10; б) модуль разности любых двух соседних цифр не менее 1. Какое из следующих чисел удовлетворяет всем условиям?
1) 56710                  2) 19910                     3) 75310                     4) 11110
17121#17121
Ниже приведены фрагменты таблиц базы данных участников конкурса исполнительского мастерства:
Страна Участник
Германия Силин
США Клеменс
Россия Холево
Грузия Яшвили
Германия Бергер
Украина Численко
Германия Феер
Россия Каладзе
Германия Альбрехт
Участник Инструмент Автор произведения
Альбрехт флейта Моцарт
Бергер скрипка Паганини
Каладзе скрипка Паганини
Клеменс фортепиано Бах
Силин скрипка Моцарт
Феер флейта Бах
Холево скрипка Моцарт
Численко фортепиано Моцарт
Яшвили флейта Моцарт

Представители скольких стран исполняют Моцарта?
1) 5                                 2) 2                                           3) 3                                     4) 4
17111#17111
Для групповых операций с файлами используются маски имен файлов. Маска представляет собой последовательность букв, цифр и прочих допустимых в именах файлов символов, в которых также могут встречаться следующие символы: Символ «?» (вопросительный знак) означает ровно один произвольный символ. Символ «*» (звездочка) означает любую последовательность символов произвольной длины, в том числе «*» может задавать и пустую последовательность. Определите, какое из указанных имен файлов удовлетворяет маске: re*_a?09.do?
1) refa-09.doc  2) ref_a_09.do  3) refe_a09.doc  4) ref_a_09.dot
17110#17110
Для групповых операций с файлами используются маски имен файлов. Маска представляет собой последовательность букв, цифр и прочих допустимых в именах файлов символов, в которых также могут встречаться следующие символы: Символ «?» (вопросительный знак) означает ровно один произвольный символ. Символ «*» (звездочка) означает любую последовательность символов произвольной длины, в том числе «*» может задавать и пустую последовательность. Определите, какое из указанных имен файлов удовлетворяет маске: d?cf*.jp*g
1) dscf3456.jpeg  2) dcf1234.jpg  3) dsscf6754.jpg  4) dcsf1111.jpeg
17109#17109
Для групповых операций с файлами используются маски имен файлов. Маска представляет собой последовательность букв, цифр и прочих допустимых в именах файлов символов, в которых также могут встречаться следующие символы: Символ «?» (вопросительный знак) означает ровно один произвольный символ. Символ «*» (звездочка) означает любую последовательность символов произвольной длины, в том числе «*» может задавать и пустую последовательность. Определите, какое из указанных имен файлов удовлетворяет маске: ?n*i??t?*.*i
1)  annimtion.jpi  2) animate.gif  3) animation.gi  4) a_nimation.gi
17108#17108
Для групповых операций с файлами используются маски имен файлов. Маска представляет собой последовательность букв, цифр и прочих допустимых в именах файлов символов, в которых также могут встречаться следующие символы: Символ «?» (вопросительный знак) означает ровно один произвольный символ. Символ «*» (звездочка) означает любую последовательность символов произвольной длины, в том числе «*» может задавать и пустую последовательность. Определите, какое из указанных имен файлов удовлетворяет маске: f*10a-??.?
1)  fi-10a-2009.d  2) fii10a_09.pas  3) fi10a-09.p  4) f10a-09.py
17107#17107
Для групповых операций с файлами используются маски имен файлов. Маска представляет собой последовательность букв, цифр и прочих допустимых в именах файлов символов, в которых также могут встречаться следующие символы: Символ «?» (вопросительный знак) означает ровно один произвольный символ. Символ «*» (звездочка) означает любую последовательность символов произвольной длины, в том числе «*» может задавать и пустую последовательность. Определите, какое из указанных имен файлов удовлетворяет маске: *ex??.tx*
1)  exex.tex  2) my_ex.tex  3) my_ex.txt  4) exex.txt
17106#17106
Для групповых операций с файлами используются маски имен файлов. Маска представляет собой последовательность букв, цифр и прочих допустимых в именах файлов символов, в которых также могут встречаться следующие символы: Символ «?» (вопросительный знак) означает ровно один произвольный символ. Символ «*» (звездочка) означает любую последовательность символов произвольной длины, в том числе «*» может задавать и пустую последовательность. Определите, какое из указанных имен файлов удовлетворяет маске: ?mas*.p*
1)  massiv.pas  2) mmassiv.p  3) mmassiv.cpp  4) mas.p
17105#17105
Для групповых операций с файлами используются маски имен файлов. Маска представляет собой последовательность букв, цифр и прочих допустимых в именах файлов символов, в которых также могут встречаться следующие символы: Символ «?» (вопросительный знак) означает ровно один произвольный символ. Символ «*» (звездочка) означает любую последовательность символов произвольной длины, в том числе «*» может задавать и пустую последовательность. Определите, какое из указанных имен файлов удовлетворяет маске: k*o*n?.c?*
1)  korn.cpp  2) konn.cpp  3) konn.c  4) klorn.cpp
17104#17104
Для групповых операций с файлами используются маски имен файлов. Маска представляет собой последовательность букв, цифр и прочих допустимых в именах файлов символов, в которых также могут встречаться следующие символы: Символ «?» (вопросительный знак) означает ровно один произвольный символ. Символ «*» (звездочка) означает любую последовательность символов произвольной длины, в том числе «*» может задавать и пустую последовательность. Определите, какое из указанных имен файлов удовлетворяет маске: ?mu*r.?st
1)  mur.lst  2) omurr.sst  3) omur.sts  4) murr.lst
17103#17103
Для групповых операций с файлами используются маски имен файлов. Маска представляет собой последовательность букв, цифр и прочих допустимых в именах файлов символов, в которых также могут встречаться следующие символы: Символ «?» (вопросительный знак) означает ровно один произвольный символ. Символ «*» (звездочка) означает любую последовательность символов произвольной длины, в том числе «*» может задавать и пустую последовательность. Определите, по какой из масок будет выбрана указанная группа файлов
 abcd.txt, bc.tel, bcd.txt, xbc.tar
1) *bc*.?t*            2) ?bc?.t?? 3) ?bc?.t*    4) *bc*.t??
17102#17102
Для групповых операций с файлами используются маски имен файлов. Маска представляет собой последовательность букв, цифр и прочих допустимых в именах файлов символов, в которых также могут встречаться следующие символы: Символ «?» (вопросительный знак) означает ровно один произвольный символ. Символ «*» (звездочка) означает любую последовательность символов произвольной длины, в том числе «*» может задавать и пустую последовательность. Определите, по какой из масок будет выбрана указанная группа файлов
 11234.xls, 1231.xml, 234.xls, 23a.xml
1) *23*.?x*            2) ?23?.x?? 3) ?23*.x*    4) *23?.x??
17101#17101
Для групповых операций с файлами используются маски имен файлов. Маска представляет собой последовательность букв, цифр и прочих допустимых в именах файлов символов, в которых также могут встречаться следующие символы: Символ «?» (вопросительный знак) означает ровно один произвольный символ. Символ «*» (звездочка) означает любую последовательность символов произвольной длины, в том числе «*» может задавать и пустую последовательность. Определите, по какой из масок будет выбрана указанная группа файлов
man.txt, men.txt, manual.ppt, menu.ppt
1) *n*m.*t 2) m?n?.?t   3) ma?e?n*.*  4) m?n*.*t 
Поделиться
Класснуть