Общий задачник со всеми задачами.

advertisement
Задачник. Тема 1. «Введение»
1. Линейные алгоритмы
Задачи для решения в классе
1.1.1. С клавиатуры вводятся два числа. Вывести на экран наибольшее число (5 баллов).
1.1.2. С клавиатуры вводятся значения двух переменных. Поменять местами значения
переменных с использованием третьеи переменнои (5 баллов).
1.1.3. Два числа вводятся с клавиатуры, если наибольшее число больше 5, то вывести их
разницу, если наименьшее число меньше 5, то вывести сумму введенных чисел (5 баллов).
1.1.4. Числа A и B вводятся с клавиатуры, вывести на экран площадь прямоугольника C (5
баллов).
1.1.5. Два числа A и B вводятся с клавиатуры, если A больше B, то вывести их сумму, если
меньше, то вывести разность (5 баллов).
1.1.6. Три числа вводятся с клавиатуры, вывести на экран максимальное и минимальное из
этих чисел (5 баллов).
1.1.7. Три числа вводятся с клавиатуры вывести на экран наибольшее из положительных чисел
и наименьшее из отрицательных (5 баллов).
1.1.8. С клавиатуры вводится 4 числа. Вывести на экран сумму двух наименьших (5 баллов).
Задачи для самостоятельного решения
1.1.9. Поменять местами значения переменных без использования третьеи переменнои (5
баллов).
2. Циклы
1.2.1. Числа вводятся с клавиатуры. Окончанием набора чисел считается число 0. Вычислить
сумму введенных чисел (5 баллов).
1.2.2. Числа вводятся с клавиатуры. Конец ввода — число 0. Вычислить среднее
арифметическое введенных чисел (5 баллов).
1.2.4. Вводится последовательность чисел до тех, пока не будет введено два равных числа
подряд. Вывести на экран количество введенных чисел (5 баллов).
1.2.5. Число K вводится с клавиатуры. Вывести на экран квадрат из звездочек со сторонои,
равнои K. Например:
при K=4
****
****
****
****
Использовать не больше двух переменных, не считая К (5 баллов).
1.2.6. Число K вводится с клавиатуры. Вывести на экран одностороннюю пирамиду из
звездочек высотои K этажеи. Например:
при K=3
*
**
***
1.2.7. Число K вводится с клавиатуры. Вывести на экран двухстороннюю пирамиду из
звездочек высотои K этажеи. Например:
при К=3
*
***
*****
Использовать не больше 5-ти переменных (5 баллов).
1.2.8. Число K вводится с клавиатуры. Вывести на экран фигуру из звездочек, где K — высота
сегмента. Например:
при K=4
*
*
*
*
*
*
*
Использовать только два цикла (5 баллов).
1.2.9. Число K вводится с клавиатуры. Вывести на экран двухстороннюю пирамиду из
звездочек высотои K этажеи. Например:
при К=3
*
***
*****
***
*
(5 баллов)
1.2.10. Число K вводится с клавиатуры. Вывести на экран «часы» из звездочек высотои K
этажеи. Например:
при К=3
*****
***
*
***
*****
(5 баллов)
1.2.11. Число K вводится с клавиатуры. Вывести на экран пустую двухстороннюю пирамиду из
звездочек высотои K этажеи. Например:
при К=3
*
* *
*****
Использовать не больше 5-ти переменных (5 баллов).
1.2.12. Число N вводится с клавиатуры. Вычислить N!=1*2*3*...*(N-1)*N (5 баллов).
1.2.13. С клавиатуры вводится число. Вывести на экран сумму цифр введенного числа (5
баллов).
1.2.14. Числа вводятся с клавиатуры, конец ввода — число 0. Требуется вывести на экран
произведение этих чисел, если их сумма не превышает 100, и их сумму в противном случае (5
баллов).
1.2.15. Вводятся два числа — N и K. Вывести количество чисел из диапазона от 1 до N
включительно, таких что их сумма цифр делится на K (5 баллов).
1.2.16. Числа вводятся с клавиатуры, конец ввода — число 0. Вывести на экран сообщение, о
том являются ли все введенные числа квадратами целых чисел (5 баллов).
Задачи для самостоятельного решения
1.2.17. Числа вводятся с клавиатуры. Конец ввода — число 0. Вывести на экран максимальное
из введенных чисел (5 баллов).
1.2.18. Число N вводится с клавиатуры. Вывести на экран последовательность из N первых
чисел Фибоначчи (каждое последующее число есть сумма двух предыдущих; первые два числа
в последовательности равны единице) (7 баллов).
1.2.19. Число K вводится с клавиатуры. Вывести на экран пустые «часы» из звездочек высотои
K этажеи. Например:
при К=3
*****
* *
*
* *
*****
(5 баллов)
1.2.21. Вывести на экран первые 256 символов стандартнои кодировки (5 баллов).
1.2.22. С клавиатуры число n и посимвольно вводится строка, конец ввода – символ ‘*’.
Закодировать его по следующему алгоритму: превращаем символ в число, прибавляем n, снова
превращаем в символ и выводим на экран. Выводить надо посимвольно – по принципу один
ввели, один вывели (7 баллов).
3. Расширение задачника к зачету
1.3.1 Вводятся числа. Конец ввода — 0. Вывести разность первого и минимального (5 баллов).
1.3.2 Вводятся числа. Конец ввода — 0. Вывести разность предпоследнего и первого (5 баллов).
1.3.3 Вводятся числа. Конец ввода — 0. Вывести разность предпоследнего и максимального (5
баллов).
1.3.4 Вводятся числа. Конец ввода — четное число. Вывести сумму нечетных (5 баллов).
1.3.5 Вводятся числа. Конец ввода — сумма двух последних чисел четное число. Вывести сумму
нечетных (5 баллов).
1.3.6 Вводится k и n. Вычислить 𝑘 𝑛 = 𝑘 × 𝑘 × 𝑘. . . 𝑘 (5 баллов).
𝑛раз
1.3.7 Вводятся количество членов геометрическои прогрессии, первыи член, знаменатель.
Посчитать их сумму. Определение: геометрическая прогрессия — последовательность чисел,
называемых членами этои прогресии, в которои следущее число равно произведению
текущего и знаменателя прогрессии. (Пример: Количество членов — 3, первыи — 2,
знаменатель — 3, тогда ответ — 26.) (5 баллов)
1.3.8 Вводятся количество членов арифметическои прогрессии, первыи член, разность.
Посчитать их сумму. Определение: арифметическая прогрессия — последовательность чисел,
называемых членами этои прогресии, в которои следущее число равно сумме текущего и
разности прогрессии. (Пример: членов: 3, первыи равен 2, разность — 3. Ответ: 15) (5 баллов)
1.3.9 Вводятся первыи член, знаменатель и целое число k. Вывести член геометрическои
прогрессии такои, что сумма предыдущих не превышает k.
(Пример: первыи член — 2, знаменатель — 3, k — 100. Ответ: 54) (5 баллов)
1.3.10 Вводятся первыи член, разность и целое число k. Вывести член арифметики прогрессии
такои, что сумма предыдущих не превышает k.
(Пример: первыи — 2, разность — 3, k — 22. Ответ: 11) (5 баллов)
1.3.11 Вводится число. Посчитать количество четных и нечетных цифр в нем. (Пример: 1073,
четных — 1, нечетных — 3.) (7 баллов)
4. Задачи потруднее
1.4.1 Определить количество шестизначных «счастливых» трамваиных билетов. Счастливым
считается билет, у которых сумма первых трех цифр совпадает с суммои трех последних (10
баллов).
1.4.2 Вводятся два целых положительных числа a и b, 𝑎 ≤ 𝑏, 𝑏 ≤ 10000. Наити цифру, на
которую оканчивается число 𝑎𝑏 (10 баллов).
Задачник. Тема 2. Массивы и функции
1. Массивы чисел
2.1.1
a) Заполнить массив из 20 элементов числами от 0 до 19.
б) Заполнить массив из 20 элементов числами от 19 до 0.
2.1.2 Вывести значения всех элементов массива.
2.1.3 Вывести все нечетные элементы массива.
2.1.4 Наити сумму всех элементов массива.
2.1.5 Вводятся N чисел. Вывести на экран максимальное и минимальное числа.
2.1.6 Вводятся N чисел. Отсортировать массив в порядке убывания (возрастания) методом
пузырька.
2.1.7 Вводятся N чисел. Требуется осуществить циклическии сдвиг элементов массива.
Например:
Начальныи массив: 1 4 3 6 2 7
После сдвига:
714362
2.1.8 Вводятся N чисел. Отсортировать массив в порядке убывания методом простои выборки.
2.1.9 Вводятся N чисел. Отсортировать массивы в порядке возрастания (убывания), а затем
слить их в третии массив, состоящии из N элементов, таким образом, чтобы элементы третьего
массива оказались в том же порядке.
2.1.10 Заполнить массив и наити последовательность из трех стоящих рядом элементов, сумма
которых минимальна.
2. Массивы символов
2.2.1 Дан массив символов, определить, является ли он полиндромом.
2.2.2 Написать функцию, которая заполняет массив символов (используя функцию getch()).
2.2.3 Вводятся строка и число. Вывести слово с номером, равным введенному числу.
2.2.4 Составить слово из первых букв каждого слова в введеннои строке (Как вариант, из
последних).
2.2.5 Вывести количество слов в строке.
2.2.6 Поиск подстроки в строке.
2.2.7 Вводятся слово и буква, вывести количестов вхождении буквы в слово.
2.2.8 Вывести объединение двух строк.
2.2.9 Дана строка. Составить из нее новую строку без пробелов.
2.2.10 Написать функцию, которая выводит данную строку без заданного символа.
2.2.11 Даны два слова. Проверить, состоят ли они из одних и тех же букв.
2.2.12 Даны два слова. Проверить, состоят ли они из одинакового количества одних и тех
же букв.
2.2.13 Вводятся строка и слово. Вывести первую строку, подсветив особенным цветом
все вхождения слова.
2.2.14 Вводятся строка и слово. Вывести все символы по одному разу в строке, которые
встречаются в слове.
3. Задачи посложнее
2.3.1 Проверить правильность расстановки открывающих и закрывающих скобок.
2.3.2 По некоторому каналу связи передается сообщение, имеющее вид последовательности
нулеи и единиц. Из-за помех возможен ошибочныи прием некоторых сигналов: нуль может
быть воспринят как единица и наоборот. Теряться сигналы не могут. Для повышения
вероятности правильного приема сигналов было решено передавать каждыи сигнал трижды.
Теперь передатчик вместо 1 всегда передает 111, а вместо 0 всегда 000.
Задача. Вводится строка, в которои могут быть только нули и единицы. Длина строки — число,
кратное трем, большее двух и меньшее 760. Восстановить исходное сообщение. При передаче
могли произоити ошибки, поэтому вместо каждои троики цифр программа должна вывести
ту цифру, которая встречается в этои троике по краинеи мере два раза.
Download