- •Алгоритмизация и программирование Практические работы
- •Простые вычисления
- •Ветвления
- •Сложные условия
- •Множественный выбор
- •Циклы с условием – 2
- •Циклы с переменной
- •Вложенные циклы
- •Процедуры
- •Задачи на ветвления
- •Напишите условие, которое определяет заштрихованную область. Проверьте свой ответ, используя программу c1.Exe.
- •Напишите условие, которое определяет заштрихованную область. Проверьте свой ответ, используя программу c1.Exe.
- •Циклы с условием
- •Процедуры с изменяемыми параметрами
- •Функции
- •Логические функции
- •Рекурсия
- •Вызов подпрограмм
- •Сохранение регистров
- •Передача параметров в подпрограмму
- •0000 Mov 12,r0 ; это число нужно возвести в квадрат
- •0004 Push r0 ; запишем его в стек
- •0006 Call sqr ; вызов подпрограммы
- •Рекурсия
- •Напишите и отладьте программу с подпрограммой, которая вычисляет куб числа, записанного в регистр r0.
- •Перебор элементов массива
- •Линейный поиск
- •Поиск максимального элемента массива
- •Алгоритмы обработки массивов
- •Отбор элементов массива по условию
- •Сортировка. Метод пузырька
- •Сортировка. Метод выбора
- •Быстрая сортировка
- •Двоичный поиск
- •Посимвольная обработка строк
- •Функции для работы со строками
- •Преобразования «строка-число»
- •Строки в процедурах и функциях
- •Рекурсивный перебор
- •Сравнение и сортировка строк
- •Обработка символьных строк: сложные задачи
- •Матрицы
- •Обработка блоков матрицы
- •Файловый ввод и вывод
- •Обработка массивов из файла
- •Обработка смешанных данных из файла
Матрицы
Напишите программу, которая заполняет квадратную матрицу случайными числами в интервале [10,99], и находит максимальный и минимальный элементы в матрице и их индексы.
Пример:
Матрица А:
12 14 67 45
32 87 45 63
69 45 14 11
40 12 35 15
Максимальный элемент A[2,2]=87
Минимальный элемент A[3,4]=11
Пиксели рисунка закодированы числами от 0 до 255 (обозначающими яркость пикселей) в виде матрицы, содержащей N строк и M столбцов. Нужно преобразовать рисунок в черно-белый по следующему алгоритму:
вычислить среднюю яркость пикселей по всему рисунку
все пиксели, яркость которых меньше средней, сделать черными (записать код 0), а остальные – белыми (код 255)
Пример:
Матрица А:
12 14 67 45
32 87 45 63
69 45 14 11
40 12 35 15
Средняя яркость 37.88
Результат:
0 0 255 255
0 255 0 255
255 255 0 0
255 0 0 0
Заполните матрицу, содержащую N строк и M столбцов, натуральными числами по спирали и змейкой, как на рисунках:
Обработка блоков матрицы
Напишите программу, которая заполняет квадратную матрицу случайными числами в интервале [10,99], а затем записывает нули во все элементы выше главной диагонали. Алгоритм не должен изменяться при изменении размеров матрицы.
Пример:
Матрица А:
12 14 67 45
32 87 45 63
69 45 14 30
40 12 35 65
Результат:
12 0 0 0
32 87 0 0
69 45 14 0
40 12 35 65
Пиксели рисунка закодированы числами (обозначающими цвет) в виде матрицы, содержащей N строк и M столбцов. Выполните отражение рисунка сверху вниз:
Пиксели рисунка закодированы числами (обозначающими цвет) в виде матрицы, содержащей N строк и M столбцов. Выполните поворот рисунка вправо на 90 градусов:
Файловый ввод и вывод
Напишите программу, которая находит среднее арифметическое всех чисел, записанных в файле в столбик, и выводит результат в другой файл.
Напишите программу, которая находит минимальное и максимальное среди чётных положительных чисел, записанных в файле, и выводит результат в другой файл. Учтите, что таких чисел может вообще не быть.
В файле в столбик записаны целые числа, сколько их – неизвестно. Напишите программу, которая определяет длину самой длинной цепочки идущих подряд одинаковых чисел и выводит результат в другой файл.
Обработка массивов из файла
В файле записано не более 100 чисел. Отсортировать их по возрастанию последней цифры и записать в другой файл.
В файле записано не более 100 чисел. Отсортировать их по возрастанию суммы цифр и записать в другой файл. Используйте функцию, которая вычисляет сумму цифр числа.
В двух файлах записаны отсортированные по возрастанию массивы неизвестной длины. Объединить их и записать результат в третий файл. Полученный массив также должен быть отсортирован по возрастанию.
Обработка смешанных данных из файла
В файле записаны данные о результатах сдачи экзамена. Каждая строка содержит фамилию, имя и количество баллов, разделенные пробелами:
<Фамилия> <Имя> <Количество баллов>
Вывести в другой файл фамилии и имена тех учеников, которые получили больше 80 баллов.
В предыдущей задаче добавить к полученному списку нумерацию, сократить имя до одной буквы и поставить перед фамилией:
П. Иванов
И. Петров
...
В файле записаны данные о результатах сдачи экзамена. Каждая строка содержит фамилию, имя и количество баллов, разделенные пробелами:
<Фамилия> <Имя> <Количество баллов>
Вывести в другой файл данные учеников, которые получили больше 80 баллов. Список должен быть отсортирован по убыванию балла. Формат выходных данных:
П. Иванов 98
И. Петров 96
...
http://kpolyakov.spb.ru
