Контроль пройден (или – контроль не пройден)



Размер памяти, которую использует Ваша программа, не должен зависеть от длины переданной последовательности чисел. Перед текстом программы кратко опишите используемый вами алгоритм решения задачи.

Пример входных данных:

60

17

3

7

9

60

0

3600

Пример выходных данных для приведенного выше примера входных данных:

Получено 6 чисел

Полученное контрольное значение: 3600

Вычисленное контрольное значение: 3600

Контроль пройден.

38) По каналу связи передается последовательность положительных целых чисел X1, X2, …; все числа не превышают 1000, их количество заранее неизвестно. Каждое число передается в виде отдельной текстовой строки, содержащей десятичную запись числа. Признаком конца передаваемой последовательности является число 0.

Участок последовательности от элемента XT до элемента XT+N называется подъемом, если на этом участке каждое следующее число больше предыдущего. Высотой подъема называется разность

XT+N - XT.

Напишите эффективную программу, которая вычисляет наибольшую высоту среди всех подъемов последовательности. Если в последовательности нет ни одного подъема, программа выдает 0. Программа должна напечатать отчет по следующей форме:

Получено ... чисел

Наибольшая высота подъема: ...

Размер памяти, которую использует Ваша программа, не должен зависеть от длины переданной последовательности чисел.

39) Взаимным индексом совпадения строк[3] 1 и S­2, которые включают только латинские буквы, называется величина

,

где 1 и n­2 – длины строк 1 и S­2, а – число вхождений буквы, имеющей номер k в латинском алфавите, в строку i. Например, индекс совпадений строк «Moloko» и «mAma» равен

(одна общая буква «m» встречается 1 раз в первой строке и 2 раза во второй строке). Напишите эффективную программу, которая вводит с клавиатуры две строки, содержащие (кроме латинских букв) знаки препинания и пробелы, и вычисляет взаимный индекс совпадения этих строк.

40) Вам необходимо написать программу распознавания чисел, записанных прописью. Сначала на вход программе подается обучающий блок, состоящий из 27 строк. Первые 9 строк содержат слова «один», «два», ..., «девять», следующие 9 строк - слова «одиннадцать», «двенадцать», ... «девятнадцать», следующие 9 строк - слова «десять», «двадцать», ..., «девяносто». Все слова записаны маленькими русскими буквами без лишних пробелов в начале и в конце строки.

Затем на вход программе подается значение N - количество записей, которые необходимо обработать. Следующие N строк содержат записанные словами числа. Каждое число записано по-русски, маленькими буквами, без ошибок. Если число состоит из нескольких слов, между словами находится ровно один пробел, лишних пробелов в начале и в конце строк нет.

Напишите эффективную программу, которая определит сумму тех входных чисел, которые находятся в интервале от 1 до 99.

Размер памяти, которую использует Ваша программа, не должен зависеть от длины исходного списка.

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

Пример входных данных (обучающий блок показан в примере с сокращениями):

Один

Два

Девяносто

5

Двадцать восемь

Два миллиона

Четырнадцать

Сто двадцать три


Дата добавления: 2018-02-18; просмотров: 718; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!