Информатика

15 732 задачивместе с подтемами
Число у задачи — рейтинг сложности, слово рядом — насколько она трудна по сравнению с другими задачами такого же типа. Шкалы задач с ответом и задач с кодом между собой не сравниваются. Рядом — счётчики попыток: успешные, неуспешные.
На вход программы подаются фамилии и имена учеников. Известно, что общее количество учеников не превосходит 100. В первой строке вводится количество учеников, принимавших участие в соревнованиях, N. Далее следуют N строк, имеющих следующий формат: 
<Фамилия> <Имя>, 
где <Фамилия> – строка, состоящая не более чем из 20 символов;
<Имя> – строка, состоящая не более чем из 15 символов.
При этом <Фамилия> и <Имя> разделены одним пробелом.

Примеры входных строк:    
Иванова Мария
Петров Сергей 

Требуется написать программу, которая формирует и печатает уникальный логин для каждого ученика по следующему правилу: если фамилия встречается первый раз, то логин – это данная фамилия, если фамилия встречается второй раз, то логин – это фамилия, в конец которой приписывается число 2 и т.д.
Например, для входной последовательности 
Иванова Мария 
Петров Сергей 
Бойцова Екатерина 
Петров Иван 
Иванова Наташа
будут сформированы следующие логины: 
Иванова 
Петров
Бойцова
Петров2 
Иванова2
 

В некотором вузе абитуриенты проходили предварительное тестирование, по результатам которого они могут быть допущены к сдаче вступительных экзаменов в первом потоке. Тестирование проводится по двум предметам. По каждому предмету абитуриент может набрать от 0 до 100 баллов. При этом к сдаче экзаменов в первом потоке допускаются абитуриенты, набравшие по результатам тестирования не менее 30 баллов по каждому из двух предмета. 

На вход программы подаются сведения о результатах предварительного тестирования. Известно, что общее количество участников тестирования не превосходит 500. 

В первой строке вводится количество абитуриентов, принимавших участие в тестировании, N. Далее следует N строк, имеющих следующий формат: 

<Фамилия> <Имя> <Баллы>,
где <Фамилия> – строка, состоящая не более чем из 20 символов;
<Имя> – строка, состоящая не более, чем из 15 символов;
<Баллы> – строка, содержащая два целых числа, разделенных пробелом – баллы, полученные на тестировании по каждому из двух предметов.
При этом <Фамилия> и <Имя>, <Имя> и <Баллы> разделены одним пробелом.

Пример входной строки:
Романов Вельямин 48 39
 
Напишите программу, которая будет выводить на экран фамилии и имена абитуриентов, потерпевших неудачу, то есть не допущенных к сдаче экзаменов в первом потоке. При этой фамилии должны выводиться в алфавитном порядке.
 
В соревнованиях по многоборью (из M видов спорта) участвуют N спортсменов (\(N < 1000\)) . На вход программе в первой строке подается число спортсменов N, во второй – число видов спорта M. В каждой из последующих N строк находится информация в следующем формате: 
<Фамилия> <Имя> <Баллы> ,
где <Фамилия> – строка, состоящая не более, чем из 20 символов без пробелов;
- <Имя> – строка, состоящая не более, чем из 12 символов без пробелов;
- <Баллы> – M целых чисел, обозначающие количество баллов, набранных спортсменом в каждом из видов многоборья. 
<Фамилия> и <Имя>, <Имя> и <Баллы>, а также отдельные числа в поле <Баллы> разделены ровно одним пробелом.
Пример входных строк: 
3
4
Иванов Сергей 100 30 78 13
Петров Антон 90 16 98 14
Сидоров Юрий 100 70 30 21 

Программа должна выводить результирующую таблицу, содержащую список спортсменов, отсортированный по убыванию суммы баллов, набранные суммы и занятые места.
В данном случае программа должна вывести: 
Иванов Сергей 221 1
Сидоров Юрий 221 1
Петров Антон 218 2
Оформите подпрограмму для расчета площади равнобедренной трапеции по ее основаниям и высоте. Составьте программу определяющую сумму площадей двух трапеций, используя созданную подпрограмму.

Входные данные
Во входной строке содержится шесть целых числа: два основания и высота первой трапеции, затем два основания и высота второй  трапеции.

Выходные данные 
Программа должна вывести на экран одно число - сумму площадей данных трапеций. 
 
Пример
Входные данные Выходные данные
1 7 8 4 1 5 3 39.000000
 
15817#15817
Составьте процедуру, осуществляющую обмен значей двух переменных величин. Используя данную процедуру, напишите программу, в результате которой величина a меняется с величиной b, а величина c - с величиной d.

Входные данные
Во входной строке содержится четыре целых числа: a, b, c, d.

Выходные данные 
Программа должна вывести на экран четыре целых числа после перестановки: a, b, c, d.

 
Примеры
входные данные
7 8 1 5
выходные данные
8 7 5 1
15675#15675
Дан фрагмент таблицы истинности выражения F.
x1 x2 x3 x4 x5 x6 x7 x8 F
1 0 1 0 1 1 1 0 0
0 1 0 1 1 0 0 1 0
1 0 0 1 0 1 0 1 1
 
Какое выражение соответствует F?
1)  (x2→ x1) and !x3 and  x4 and !x5 and x6 and !x7 and x8
2)  (x2→ x1) or !x3 or  x4 or !x5 or x6 or !x7 or x8
3)  !(x2 → x1) or x3 or  !x4 or x5 or !x6 or x7 or !x8
4)  (x2 → x1) and x3 and  !x4 and x5 and !x6 and x7 and !x8
На вход программы подаются сведения о результатах соревнований по школьному многоборью. Многоборье состоит из соревнований по четырем видам спорта, участие в каждом из которых оценивается баллами от 0 до 10 (0 баллов получает ученик, не принимавший участия в соревнованиях по данному виду спорта). Победители определяются по наибольшей сумме набранных баллов. Известно, что общее количество участников соревнований не превосходит 100.
В первой строке вводится количество учеников, принимавших участие в соревнованиях, N. Далее следуют N строк, имеющих следующий формат: 
<Фамилия> <Имя> <Баллы> ,
где:
- <Фамилия> – строка, состоящая не более чем из 20 символов;
- <Имя> – строка, состоящая не более чем из 15 символов;
- <Баллы> - строка, содержащая четыре целых числа, разделенных пробелом, соответствующих баллам, полученным на соревнованиях по каждому из четырех видов спорта.
При этом <Фамилия> и <Имя>, <Имя> и <Баллы> разделены одним пробелом.

Примеры входных строк:        
Иванова Мария 5 8 6 3
Петров Сергей 9 9 5 7

Напишите программу, которая будет выводить на экран фамилии и имена трех лучших участников многоборья. Если среди остальных участников есть ученики, набравшие то же количество баллов, что и один из трех лучших, то их фамилии и имена также следует вывести. При этом имена и фамилии можно выводить в произвольном порядке.
 
В молочных магазинах города Х продается сметана с жирностью 15, 20 и 25 процентов. В городе X был проведен мониторинг цен на сметану. Напишите эффективную по времени работы и по используемой памяти программу, которая будет определять для каждого вида сметаны, сколько магазинов продают ее дешевле всего. На вход программе сначала подается число магазинов N. В каждой из следующих N строк находится информация в следующем формате:
<Фирма> <Улица> <Жирность> <Цена>
где <Фирма> – строка, состоящая не более, чем из 20 символов без пробелов, <Улица> – строка, состоящая не более, чем из 20 символов без пробелов, <Жирность> – одно из чисел – 15, 20 или 25, <Цена> – целое число в диапазоне от 2000 до 5000, обозначающее стоимость одного литра сметаны в копейках.
<Фирма> и <Улица>, <Улица> и <Жирность>, а также <Жирность> и <Цена> разделены ровно одним пробелом.

Пример входной строки:
Перекресток Короленко 25 3200

Программа должна выводить через пробел 3 числа – количество магазинов, продающих дешевле всего сметану с жирностью 15, 20 и 25 процентов. Если какой-то вид сметаны нигде не продавался, то следует вывести 0.

Пример выходных данных:
12 10 0
15606#15606
Дан фрагмент таблицы истинности для выражения F:
x1 x2 x3 x4 x5 x6 x7 x8 F
    1       1   0
1         1     1
      1       1 1
 
Каким выражением может быть F?
1)  x1 and !x2 and x3 and  !x4 and x5 and x6 and !x7 and !x8
2)  x1 or x2 or x3 or  !x4 or !x5 or !x6 or !x7 or !x8
3)  !x1 and x2 and !x3 and  x4 and x5 and !x6 and !x7 and !x8
4)  x1 or !x2 or !x3 or  !x4 or !x5 or !x6 or !x7 or !x8
15605#15605
Дан фрагмент таблицы истинности для выражения F:
x1 x2 x3 x4 x5 x6 x7 x8 F
    1       1   0
1         1     1
      1       1 0
 
Каким выражением может быть F?
1)  x1 and !x2 and x3 and  !x4 and x5 and x6 and !x7 and !x8
2)  x1 or x2 or x3 or  !x4 or !x5 or !x6 or !x7 or !x8
3)  x1 and x2 and !x3 and  x4 and x5 and !x6 and !x7 and !x8
4)  x1 or !x2 or !x3 or  !x4 or !x5 or !x6 or !x7 or !x8
15604#15604
Дан фрагмент таблицы истинности для выражения F:
x1 x2 x3 x4 x5 x6 x7 x8 F
    0       1   1
1         1     1
      1       0 0
 
Каким выражением может быть F?
1)  x1 and !x2 and x3 and  !x4 and x5 and x6 and !x7 and !x8
2)  x1 or x2 or x3 or  !x4 or !x5 or !x6 or !x7 or x8
3)  !x1 and x2 and !x3 and  x4 and x5 and !x6 and !x7 and !x8
4)  x1 or !x2 or !x3 or  !x4 or !x5 or !x6 or !x7 or !x8
15603#15603
Дан фрагмент таблицы истинности для выражения F:
x1 x2 x3 x4 x5 x6 x7 x8 F
    0       1   0
1         0     0
    0       1   1
 
Каким выражением может быть F?
1)  x1 and !x2 and x3 and  !x4 and x5 and x6 and x7 and !x8
2)  x1 or x2 or x3 or  !x4 or !x5 or !x6 or x7 or x8
3)  !x1 and x2 and !x3 and  x4 and x5 and !x6 and x7 and !x8
4)  x1 or !x2 or !x3 or  !x4 or !x5 or !x6 or x7 or !x8
15602#15602
Дан фрагмент таблицы истинности для выражения F:
x1 x2 x3 x4 x5 x6 x7 x8 F
    0       1   1
1   0     1     0
      1       0 1
 
Каким выражением может быть F?
1)  x1 and !x2 and x3 and  !x4 and x5 and x6 and !x7 and !x8
2)  !x1 or x2 or x3 or  !x4 or !x5 or !x6 or !x7 or x8
3)  !x1 and x2 and !x3 and  x4 and x5 and !x6 and !x7 and !x8
4) !x1 or !x2 or !x3 or  !x4 or !x5 or !x6 or !x7 or !x8
15601#15601
 Дан фрагмент таблицы истинности для выражения F:
x1 x2 x3 x4 x5 x6 x7 x8 F
    0       1   0
1   0     1     1
      1       0 0
 
Каким выражением может быть F?
1)  x1 and !x2 and !x3 and  !x4 and x5 and x6 and !x7 and !x8
2)  !x1 or x2 or x3 or  !x4 or !x5 or !x6 or !x7 or x8
3)  x1 and x2 and !x3 and  x4 and x5 and !x6 and !x7 and !x8
4) !x1 or !x2 or !x3 or  !x4 or !x5 or !x6 or !x7 or !x8
15600#15600
Дан фрагмент таблицы истинности для выражения F:
x1 x2 x3 x4 x5 x6 x7 F
      1   0   1
      0     1 1
0     1       0
 
Каким выражением может быть F?
1)  x1 and !x2 and !x3 and  !x4 and x5 and x6 and !x7
2)  !x1 or x2 or x3 or  !x4 or !x5 or !x6 or !x7
3)  x1 and x2 and !x3 and  x4 and x5 and !x6 and !x7
4) x1 or !x2 or !x3 or  !x4 or !x5 or !x6 or !x7
15599#15599
Дан фрагмент таблицы истинности для выражения F:
x1 x2 x3 x4 x5 x6 x7 F
      1   0   0
      0     1 1
0     1       0
 
Каким выражением может быть F?
1)  x1 and !x2 and !x3 and  !x4 and x5 and x6 and x7
2)  !x1 or x2 or x3 or  !x4 or !x5 or !x6 or !x7
3)  x1 and x2 and !x3 and  x4 and x5 and !x6 and x7
4) x1 or !x2 or !x3 or  !x4 or !x5 or !x6 or !x7
Годовые оценки по девяти предметам за 9-й класс каждого из N учеников класса напечатаны в виде таблицы (в первой строке - оценки первого ученика, во второй - второго и т.д.). Фамилия ученика записана в первом столбце. Необходимо вывести данную таблицу в порядке убывания среднего балла. В случае равенства среднего балла, фамилии выводить в порядке их следования в исходных данных.

Входные данные
На вход программе подаются:
- в первой строке число N - количество учеников (1<=N<=25);
- далее идут N строк, в формате <фамилия (последовательность латинских символов)> <оценка за 1й предмет> <оценка за 2й предмет> ...  <оценка за 9й предмет>.

Выходные данные
Вывести на экран таблицу, записанную в порядке убывания среднего балла по всем предметам в формате:
<Фамилия> <Средний балл (с точностью 6 знаков после запятой)>
В случае равенства среднего балла, фамилии выводить в порядке их следования в исходных данных.
 
Примеры
Входные данные Выходные данные
1
3
Sidorov 1 1 1 1 1 1 1 1 1 
Ivanov 5 5 5 5 5 5 5 5 5
Petrov 4 4 4 4 4 4 4 4 4
Ivanov 5.000000
Petrov 4.000000
Sidorov 1.000000
15580#15580
Годовые оценки по девяти предметам за 9й класс каждого из N учеников класса напечатаны в виде таблицы (в первой строке - оценки первого ученика, во второй - второго и т.д.) Фамилия ученика записана в первом столбце. Необходимо вывести данную таблицу в алфавитном порядке (по возрастанию, начиная с A заканчивая Z)

Входные данные: на вход программе подаются
в первой число N - количество учеников, 1<=N<=25
далее идут N строк, в формате <фамилия-последовательность латинских символов> <оценка за 1й предмет> <оценка за 2й предмет>...  <оценка за 9й предмет>

Выходные данные: вывести на экран исходную таблицу, записанную в алфавитном порядке от A до Z

Примеры
входные данные
3
Sidorov 1 1 1 1 1 1 1 1 1 
Ivanov 5 5 5 5 5 5 5 5 5
Petrov 4 4 4 5 4 5 5 5 5
выходные данные

		
Ivanov 5 5 5 5 5 5 5 5 5
Petrov 4 4 4 5 4 5 5 5 5
Sidorov 1 1 1 1 1 1 1 1 1
 
15579#15579
Годовые оценки по девяти предметам за 9й класс каждого из N учеников класса напечатаны в виде таблицы (в первой строке - оценки первого ученика, во второй - второго и т.д.) Фамилия ученика записана в первом столбце. в начале нового учеюного года в класс пришел новый ученик. Изменить таблицу так, чтобы  в ней была фамилия и оценки за 9й класс и нового ученика, учитывая, что этот ученик в списке должен быть на s-м месте

Входные данные: на вход программе подаются
в первой число N - количество учеников, 1<=N<=25
далее идут N строк, в формате <фамилия-последовательность латинских символов> <оценка за 1й предмет> <оценка за 2й предмет>...  <оценка за 9й предмет>
в N+1 строке указывается число - номер позиции, куда необходимо вставить запись о новом учащемся
в N+2 строке идет строка в которой указавыются данные нового ученика в виде <фамилия-последовательность латинских символов> <оценка за 1й предмет> <оценка за 2й предмет>...  <оценка за 9й предмет>
 
Выходные данные: вывести исходную таблицу с добавленной на s-е место записью о новом ученике

Примеры
входные данные
2
Ivanov 5 5 5 5 5 5 5 5 5 
Petrov 4 4 4 5 4 5 5 5 5
1
Sidorov 1 1 1 1 1 1 1 1 1 
выходные данные

		
Ivanov 5 5 5 5 5 5 5 5 5
Sidorov 1 1 1 1 1 1 1 1 1
Petrov 4 4 4 5 4 5 5 5 5
 
15578#15578
Известны данные о количестве учащихся в каждом из N учебных заведений и о типе этого заведения (s-школа, t-техникум, u-училище). Составить программу, с сипользованием структур, которая находит среднее количество учащихся в каждом типе учебного заведения. Предполагается, что в записях имеется хотя бы 1 учреждение каждого типа

Входные данные: на вход программе подаются
в первой число N - количество записей, 1<=N<=25
далее идут N строк, в формате <число от 100 до 500 - число учащихся> <тип учебного заведения - буква s, t или u>
 
Выходные данные: вывести три числа через пробел в формате <среднее количество учащихся школ> <среднее количество учащихся техникумов> <среднее количество учащихся училищ> - все числа выводить с точностью до 6 знаков после запятой
Поделиться
Класснуть