Информатика

16 015 задачвместе с подтемами
Число у задачи — рейтинг сложности, слово рядом — насколько она трудна по сравнению с другими задачами такого же типа. Шкалы задач с ответом и задач с кодом между собой не сравниваются. Рядом — счётчики попыток: ✓ успешные, ✗ неуспешные.
20123#20123
Для какого слова ложно высказывание:
Первая буква слова согласная  → (Вторая буква имени гласная /\ Последняя буква слова согласная)?
1) ЖАРА                 2) ОРДА              3) ОГОРОД        4) ПАРАД
20121#20121
Для какого названия животного ложно высказывание:
В слове 4 гласных буквы  /\  ¬ (Пятая буква гласная)  \/   В слове 5 согласных букв?
1) Шиншилла           2) Кенгуру                         3) Антилопа           4) Крокодил
20120#20120
Для какого названия животного ложно высказывание:
Заканчивается на согласную  /\  В слове 7 букв  →   ¬(Третья буква согласная)?
1) Верблюд       2) Страус                            3) Кенгуру         4) Леопард
20119#20119
Для какого имени истинно высказывание:
¬ (Первая буква согласная  → Последняя буква согласная) /\   Вторая буква согласная?
1) ИРИНА           2) СТЕПАН                          3) МАРИЯ          4) КСЕНИЯ
В неориентированном графе требуется найти длину кратчайшего пути между двумя вершинами.
 
Формат входных данных
В первой строке входных данных записано число N - количество вершин в графе (1 <= N <= 100). Далее с новой строки записана матрица смежности (0 обозначает отсутствие ребра, 1 - наличие ребра). В последней строке записаны номера двух вершин - начальной и конечной.
 
Формат выходных данных 
Выведите длину кратчайшего пути. Если пути не существует, выведите одно число -1.
18815#18815
Напишите программу, которая в последовательности целых чисел определяет сумму положительных чисел, кратных 5. Программа получает на вход целые числа, количество введённых чисел неизвестно, последовательность чисел заканчивается числом 0 (0 – признак окончания ввода, не входит в последовательность). Количество чисел не превышает 1000. Введённые числа по модулю не превышают 30000. Программа должна вывести одно число: сумму положительных чисел, кратных 5. Пример работы программы
 
Входные данные
-25
45
20
1
0
Выходные данные
65

18813#18813
Напишите программу, которая в последовательности целых чисел определяет количество положительных чисел, кратных 11. Программа получает на вход целые числа, количество введённых чисел неизвестно, последовательность чисел заканчивается числом 0 (0 – признак окончания ввода, не входит в последовательность). Количество чисел не превышает 1000. Введённые числа по модулю не превышают 30 000. Программа должна вывести одно число: количество положительных чисел, кратных 11. Пример работы программы
 
Входные данные
-22
44
22
1
0
Выходные данные
2

18801#18801
Напишите программу, которая вычисляет произведение членов последовательности, кратных 5. Программа получает на вход целые числа, количество введённых чисел неизвестно, последовательность чисел заканчивается числом 0 (0 – признак окончания ввода, не входит в последовательность) . Количество чисел не превышает 1000. Введённые числа по модулю не превышают 30 000. Программа должна вывести одно число: произведение членов последовательности, кратных 5. Пример работы программы
 
Входные данные
8
-5
2
0
Выходные данные
-5

18796#18796
Напишите программу, которая в последовательности целых чисел определяет разность максимального и минимального чисел. Программа получает на вход целые числа, количество введённых чисел неизвестно, последовательность чисел заканчивается числом 0 (0 – признак окончания ввода, не входит в последовательность) . Количество чисел не превышает 1000. Введённые числа по модулю не превышают 30 000. Программа должна вывести одно число: разность максимального и минимального чисел.
Пример работы программы
 
Входные данные
8
-5
2
0
Выходные данные
13

Даны две квадратных таблицы чисел. Требуется построить третью, 
каждый элемент которой равен сумме элементов, стоящих на том же месте
в 1-й и 2-й таблицах.
 
Входные данные
Во входном файле записано сначала число N, затем записана первая таблица,
а после нее - вторая. Элементы таблиц - числа от 0 до 100. 
1<=N<=100.
 
Выходные данные
В выходной файл выведите результирующую таблицу.
 
Пример входного файла
3
1 2 3
4 5 6
7 8 9
 
11 12 13
14 15 16
17 18 19
 
Пример выходного файла
12 14 16
18 20 22
24 26 28
 
Симметричная матрица
 
Дана квадратная матрица. Проверить, является ли она симметричной относительно
главной диагонали.
 
Входные данные. В файле INPUT.TXT записано число n (0<n<=100). 
В следующих n строках записано по n целых чисел от -32768 до 32767. 
 
Выходные данные. В файл OUTPUT.TXT вывести YES, 
если матрица симметрична относительно главной диагонали, иначе вывести NO.
 
Пример файла INPUT.TXT
3
1 2 3
2 4 5
3 5 6
 
Пример файла OUTPUT.TXT
YES
 
Нолики
 
В матрице найти положение нулевого элемента.
 
Входные данные
Формат входных данных как в примере.
Хотя бы один нулевой элемент в матрице всегда существует.
 
Выходные данные
Вывести сначала номер строки, а затем - номер столбца нулевого элемента. 
Если в матрице несколько нулей, выдать позицию любого из них.
 
Пример входного файла
3 4
0 1 2 3
4 5 0 1
2 3 4 5
 
Пример выходного файла
2 3
 
ГАИ#18782
ГАИ
 
Вдоль шоссе в точках X1,X2,...,XN расположены посты ГАИ. 
В точке X произошло мелкое ДТП (дорожно-транспортное происшествие).
Требуется определить, какой из постов ГАИ расположен ближе всего
к этой точке, чтобы с него послать к месту происшествия наряд милиции.
 
Входные данные
Во входном файле записано сначала число N - количество пунктов ГАИ. (1<=N<=100)
Далее следуют координаты расположения постов ГАИ на прямом шоссе
(целые числа от -10000 до 10000). Далее идет координата точки,
в которой произошло ДТМ (целое число от -10000 до 10000).
 
Выходные данные
В выходной файл требуется вывести одно число - номер поста ГАИ,
с которого нужно послать наряд к месту ДТП. Если несколько постов
ГАИ находятся на одинаковом расстоянии от точки ДТП, выведите любой из них.
 
Пример входного файла
5
10 2 8 -7 3
7
 
Пример выходного файла
3
Минимум в таблице
 
Дана таблица чисел, состоящая из N строк по M чисел в каждой.
Все числа в таблице - натуральные, не превышающие 1000.
Требуется найти наименьшее число в этой таблице.
 
Входные данные
Во входном файле записано сначала число N - количество строк,
а затем число M - количество столбцом таблицы (1<=N<=100, 1<=M<=100).
Далее идет сама таблица.
 
Выходные данные
В выходной файл выведите наименьшее число, которое встречается в таблице.
 
Пример входного файла
3 4
6 4 10 4
3 7 5 7
6 3 4 3
 
Пример выходного файла
3
 
 
Количество операций
 
Дана программа сортировки (p141.pas). Требуется узнать, сколько раз
при сортировке конкретного массива с помощью этой программы
выполняется операция сравнения двух элементов массива (строка 25 программы).
 
Входные данные
Задано сначала число N (1≤N≤100), а затем N целых чисел, по модулю не превышающих 1000.
 
Выходные данные
Ваша программа должна печатать одно число - сколько
раз в процессе сортировки этого массива программой p141.pas выполнится
команда сравнения двух элементов массива.
 
Пример входного файла
5
3 1 2 4 2
 
Пример выходного файла
10

Текст программы p141.pas
const nmax=100;

var a:array[1..nmax] of integer;
    n:integer;
    i,j,g:integer;

    f1,f2:text;

begin
assign(f1,'input.txt');
reset(f1);
assign(f2,'output.txt');
rewrite(f2);
                                  {Чтение входных данных}
read(f1,n);
for i:=1 to n do read(f1,a[i]);
                                  {Сортировка массива}

for i:=1 to n do begin            {Подбираем число на i-ое место}

  g:=i;                           {Считаем, что самое маленькое число,
                                   которое нам встретилось, стоит на месте i}

  for j:=i+1 to n do              {Перебираем все числа с i+1 до конца массива}
    if a[j]<a[g] then g:=j;       {Если нашли число, которое меньше,
                                   чем то, что уже найдено, запоминаем его}

                                  {Меняем местами числа, стоящие на i-ом и
                                   на g-ом местах }
                                  {Если a[i]=x, a[g]=y, то после выполнения
                                   команды: }
  if i<>g then begin
    a[i]:=a[i]+a[g];                {a[i]=x+y, a[g]=y}
    a[g]:=a[i]-a[g];                {a[i]=x+y, a[g]=(x+y)-y=x}
    a[i]:=a[i]-a[g];                {a[i]=(x+y)-x=y}
                                  {То есть после этого a[i]=y, a[g]=x
                                   обмен значений произошел}
    end;

  end;

                                  {Выводим результат}
for i:=1 to n do
  write(f2,a[i],' ');
close(f1);
close(f2);
end.

Поделиться
Класснуть