|
|||||||
АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция |
Задачи повышенной сложности1. (2) Составьте программу "тест" На экран по очереди выдаются вопросы, на которые нужно ввести символ ("Y" или "N"). В зависимости от вопроса и ответа к общей сумме прибавляется определенное число очков. После окончания вопросов по общей сумме очков делается заключение. 2. (6) Представьте, что вы встретились с хранителем времени и он открыл вам тайну звезд. Почему мерцают звезды на небе? Потому, что каждая звезда - жизнь одного человека. Вам нужно вовремя погасить старую и зажечь новую. Помогите хранителю времени решить задачу. Решение задачи начинается с построения модели: пусть на экране каждая точка обозначает звезду и всего горит 10 (выбранных случайным образом) звезд; теперь необходимо погасить первую зажженную точку и нарисовать ее в любом другом месте, затем перейти ко второй и т.д. Когда погаснет 10, необходимо вновь перейти к первой, то есть необходимо постоянно хранить координаты 10 элементов. 3. (6) Программа "дождь" - на экране появляются (случайным образом) 10 символов и они движутся сверху вниз. В тот момент, когда один из символов достигнет нижней границы экрана, он появляется в верхней части. 4. (2) Измените программу "дождь" так, чтобы некоторые точки двигались быстрее, другие медленнее. 5. (10) Программа «Поле чудес». Есть массив слов, из которого случайным образом выбирается слово. На экран выводится количество одинаковых символов, соответствующее длине слова. Пользователь должен задавать букву и, если такая буква в слове имеется, то она выводится в соответствующее место экрана. 6. (10+4) Игра «Удав»: на начало игры «Удав»-двухзвенный элемент (голова и хвост), имеющий несколько «жизней». Направление его движения задаётся клавишами «8»-вверх, «2»-вниз, «6»-вправо, «4»-влево. Задача удава успеть собрать «яблочки»-символы, которые появляются в случайном месте экрана на некоторое время, а затем исчезают. Если «Удаву» удаётся «съесть» яблоко, то его размер увеличивается на 1 звено, за каждый символ добавляется некоторое количество очков, зависящее от времени нахождения «яблочка». Жизнь «удав» теряет, если он выпадает за границу поля. (Можно усложнить задачу: потеря жизни при попадании головы удава в его тело) X1 ===========================================
7. (2) Дан символьный массив с количеством элементов N, который содержит данные о приходе избирателей на выборы главы местного самоуправления (“Y” – явка, ”N” – неявка). Перенесите все элементы “Y” в начало массива, а ”N” - в конец. 8. (2) У прилавка магазина выстроилась очередь из N покупателей. Время обслуживания i-того покупателя равно ti. Определить время пребывания i-того покупателя в очереди. 9. (2) У вас есть доллары. Вы хотите обменять их на рубли. Есть информация о стоимости купли-продажи в банках города. В городе N банков. Составьте программу, определяющую, какой банк выбрать, чтобы выгодно обменять доллары на рубли. 10.(2) Дана последовательность, состоящая из N чисел. Указать наименьшую длину отрезка числовой оси, содержащего все эти числа. 11.(4) Пригодность детали оценивается по размеру R, который должен соответствовать интервалу (A-h; A+h). Определить, имеются ли в партии из N деталей бракованные. Если да, то подсчитать их количество, иначе выдать отрицательный ответ. 12. (8) Японская радиокомпания провела опрос N радиослушателей по вопросу: «Какое животное Вы связываете с Японией и японцами?». Составьте программу получения k наиболее часто встречающихся ответов и их долей (в процентах). 13. (8) В абсолютно темном помещении заключены Принцесса, которая может двигаться с любой скоростью в любом направлении, и Чудовище, скорость которого ограничена. Чудовище захватывает принцессу, если расстояние между ними становится меньше заданного. Какой должна быть стратегия Принцессы, чтобы она могла максимально оттянуть поимку? Составьте алгоритм игры по мотивам этой задачи. Игра происходит на целочисленной решетке размером N х N. Нескольким играющим поочередно предоставляется возможность выступить в роли Чудовища. Выигравшим считается тот, кто на поимку Принцессы затратит наименьшее количество ходов. В начальной позиции Принцесса находится в точке П (0,N), а Чудовище – в точке Ч (N,0). Всякий ход состоит в следующем: Принцесса перемещается случайным образом в произвольный узел решетки. Игрок-Чудовище передвигается, изменяя каждую из координат не более чем на К единиц. (Естественно, что игроку не известно, где находится Принцесса, ведь игра происходит в темной комнате). Если окажется, что расстояние между Чудовищем и Принцессой не превосходит некоторого R, то Принцесса поймана, и к игре приступает следующий игрок. Примечание. Значение R можно рассматривать как параметр, характеризующий упитанность Принцессы. Начинающим Чудовищам рекомендуется устанавливать значение R не слишком малым. 14.«Суперзамок». Секретный замок для сейфа состоит из 10 расположенных в ряд ячеек, в которые надо вставить игральные кубики. Но дверь открывается только в том случае, когда в любых трех соседних ячейках сумма точек на передних гранях кубиков равна 10. (Игральный кубик имеет на каждой грани от 1 до 6 точек.) Напишите программу, которая разгадывает код замка при условии, что два кубика уже вставлены в ячейки.
X2 ====================================================
15. (2) Создать матрицу с таблицей умножения (Пифагора). 16.(3) Из линейного массива 100 случайных целых (находящихся в диапазоне [0;1]) чисел образовать матрицу МxN. 17. (3) В массиве из ста случайных целых чисел найти максимальный и минимальный элементы и переставить их на первое и последнее места соответственно. Расширить массив – добавить по новому элементу между каждой парой соседних элементов как их сумму – всего 99 штук. Удалить из массива все нечетные элементы. 18.(4) В матрице, размером MxN найти минимальный и максимальный элемент и удалить строку с минимальным элементом и столбец с максимальным элементом. 19.(10) Сгенерировать и вывести на экран массив 10x10 из нулей и единиц так, чтобы нулей было в несколько раз больше. Определить и вывести массив B как одно из геометрических преобразований массива A: а) разворот на 90 градусов по часовой стрелке; г) зеркальное отражение по горизонтали; е) зеркальное отражение по главной диагонали; 20. (10) Известно, что в лабиринте имеется один вход/выход. Парашютист попал в лабиринт. Покажите траекторию движения до выхода из лабиринта.
X3 ====================================================
21. (2) Удалить в тексте все, кроме первого, подряд идущие повторяющие символы. 22.(2) С клавиатуры вводится текст, содержащий фамилию, имя и отчество. Необходимо отформатировать его так, чтобы осталась только фамилия и инициалы. 23.(2) Программа «пароль». При запуске программы запрашивается пароль, причем вместо вводимых символов необходимо отображать на экране символ «*». Если введён ожидаемый пароль, выводится сообщение «Ok», в противном случае он запрашивается снова. Если трижды вводится не то, что нужно – закрыть окно WinCrt. 24.(3) В тексте удалить все символы, расположенные между (). Скобки оставить! 25.(4) Исключить из текста лишние пробелы. Пробел считается лишним, если он: стоит в начале строки, стоит в конце строки, следует за пробелом. 26.(6) Зашифровать сообщение таким образом: к коду каждого введённого символа добавить некое число, но полученный код не должен превышать 255. 27.(6) Написать программу, которая вычисляет значение выражения N0Z1N1Z2…ZkNk, где Ni – десятичная цифра, Zi – один из знаков ‘+’ или ‘–‘. X4 ====================================================
28. (2) Написать подпрограмму последовательного заполнения части экрана заданным символом. Изобразить на экране четыре прямоугольника, заполненных различными символами. 29.(2) Написать подпрограмму заполнения линейного массива неповторяющимися целыми числами из диапазона [m;n]. Создать два массива КХ [1..79] и KY [1..24]. Используя элементы массива КХ [1..79] как горизонтальные координаты, последовательно (с задержкой) заполнить экран неким символом, выбирая номера строк из массива KY. 30. (4) Написать подпрограмму перевода десятичного числа в любую систему счета, меньшую 10. Используя её, построить программу, которая по запросу с клавиатуры десятичных чисел и основания системы счета производила бы их перевод до тех пор, пока заданным числом не оказался бы 0. 31. (6) Написать программу «проявка», которая бы медленно заполняла заданные области экрана точками. Подсказка: создать процедуры преобразования линейного массива в прямоугольный и прямоугольного в линейный, нахождения индекса минимального элемента двухмерного массива. Использовать элементы массивов в качестве экранных координат. X5 ====================================================
32.(4)В одном районе расположены тридцать населенных пунктов. По территории проходит железная дорога. По просьбе жителей района планируется построить железнодорожную станцию и проложить дороги так, чтобы сумма расстояний от всех населенных пунктов до станции была минимальной, если участок дороги, проходящей по территории района прямолинеен. (4) Результат представить графически. 33.
Поиск по сайту: |
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.004 сек.) |