Файлы с выполненными практическими работами выслать на почтовый ящик
Тема "Устройство компьютера"
Учебник: §30. Принципы устройства компьютеров
Презентация «Как устроен компьютер»:
Тест:
Скрин результата теста высылаем мне на почту
На протяжении почти полувека остаётся актуальной и востребованной символьная графика (ASCII-графика). Для создания произведений в этой области не требуется специального программного обеспечения, достаточно иметь фантазию, пространственное мышление и усидчивость. Примеры простых символьных изображений приведены ниже...
... хотя в сети можно найти и более сложные примеры.
Задача 1.
Трое мальчиков Костя, Фома и Марат дружили с тремя девочками – Женей, Светой и Мариной. Но вскоре компания разделилась на пары, потому, что оказалось:
• Света ненавидит ходить на лыжах.
• Костя, Женин брат часто катается со своей подружкой на лыжах
• А Фома теперь бежит на свидание к Костиной сестре.
С кем же проводит время Марат?
Задача 2.
Три друга — Иван, Дмитрий, Степан преподают различные предметы (химию, литературу, физику) в школах Москвы, Калининграда и Перми. Известно:
1) Иван работает не в Москве, а Дмитрий не в Калининграде;
2) москвич преподает не физику;
3) тот, кто работает в Калининграде, преподает химию;
4) Дмитрий преподает не литературу.
Какой предмет и в каком городе преподает каждый из товарищей?
Задача 3.
На одной улице стоят в ряд 4 дома, в которых живут 4 человека: Алексей, Егор, Виктор и Михаил. Известно, что каждый из них владеет ровно одной из следующих профессий: Токарь, Столяр, Хирург и Окулист, но неизвестно, кто какой и неизвестно, кто в каком доме живет. Однако, известно, что:
1. Токарь живет левее Столяра
2. Хирург живет правее Окулиста
3. Окулист живет рядом со Столяром
4. Токарь живет не рядом со Столяром
5. Виктор живет правее Окулиста
6. Михаил не Токарь
7. Егор живет рядом со Столяром
8. Виктор живет левее Егора
Выясните, кто какой профессии, и кто где живет, и дайте ответ в виде заглавных букв имени людей, в порядке слева направо. Например, если бы в домах жили (слева направо) Константин, Николай, Роман и Олег, ответ был бы: КНРО.
Сегодня мы с вами перейдем от теории к практике. Если вы обратили внимание после §42 «Системное программное обеспечение» есть пункт «Подготовьте сообщение». Сообщения необходимо разместить на сайте САММИТ.
Номер вашей темы – ваш номер в алфавитном списке группы, если номер больше 5, то начинаем с начала. Для создания сообщения в блоге необходимо зарегистрироваться на сайте. Сообщение размещаем в блоге "Пробник блога" (
Просмотрите видео с инструкцией по регистрации и советами по созданию сообщения в блогах.
Требования к сообщениям:
Program planeta; Uses Graph; Var Gd, Gm : SmaLLInt; x, A, B, C: integer; Begin Gd:=Detect; InitGraph(Gd,Gm,''); A:=100; B:=80; C:=20; for x:= 0 to 1000 do Circle(round(A*cos(x/B))+GetMaxX div 2, round(A*sin(x/B))+GetMaxY div 2,14); Readln; CloseGraph; End. |
Program sinus; Uses Graph; Var Gd, Gm : SmaLLInt; x, A, B, C: integer; Begin Gd:=Detect; InitGraph(Gd,Gm,''); A:=100; B:=80; C:=20; for x:= -100 to 1000 do begin Putpixel(x+C, round(A*sin(x/B))+GetMaxY div 2,14); end; Readln; CloseGraph; End. |
6-8 мая 2020 года обеспечить работу образовательной организации согласно утвержденному графику. Провести уроки в альтернативной форме (посещение онлайн выставок, музеев, театров, дистанционных квестов, дискуссионных образовательных площадок, викторины, использовать игровые образовательные технологии, и др.), минимизируя объем домашнего задания для обучающихся 2-11 классов. Директор департамента А.А. Дренин |
const MAX=100; var A: array[1..MAX] of integer; |
var N: integer; Fin: Text; ... Assign(Fin,'input.txt'); Reset(Fin); N:= 0; while (not Eof(Fin)) and (N < MAX) do begin N:= N + 1; readln(Fin, A[N]); end; Close(Fin); |
var Fout: Text; ... Assign(Fout, 'output.txt'); Rewrite(Fout); for i:= 1 to N do writeln(Fout, A[i]); Close(Fout); |
«A»: В файле записано не более 100 чисел. Отсортировать их по возрастанию последней цифры и записать в другой файл.
«B»: В файле записано не более 100 чисел. Отсортировать их по возрастанию суммы цифр и записать в другой файл. Используйте функцию, которая вычисляет сумму цифр числа. (эту функцию мы уже неоднократно использовать)
«C»: В двух файлах записаны отсортированные по возрастанию массивы неизвестной длины. Объединить их и записать результат в третий файл. Полученный массив также должен быть отсортирован по возрастанию.
«A»: Напишите программу, которая находит среднее арифметическое всех чисел, записанных в файле в столбик, и выводит результат в другой файл.
«B»: Напишите программу, которая находит минимальное и максимальное среди чётных положительных чисел, записанных в файле, и выводит результат в другой файл. Учтите, что таких чисел может вообще не быть.
«C»: В файле в столбик записаны целые числа, сколько их – неизвестно. Напишите программу, которая определяет длину самой длинной цепочки идущих подряд одинаковых чисел и выводит результат в другой файл.
Текст программы вставляем в комментарий к этому сообщению, в теме указываем Фамилию и Имя.
Удачи!
Внимание! Работы принимаю сегодня до 20.00!
Главная диагональ квадратной матрицы n x n (т.е. той, у которой количество строк равно количеству столбцов) проходит с верхнего левого угла матрицы (элемент 1,1) до правого нижнего угла матрицы (элемент n,n).
Побочная диагональ квадратной матрицы n x n проходит с нижнего левого угла матрицы (элемент n,1) до правого верхнего угла матрицы (элемент 1,n).
Формулу поиска элементов диагоналей проще всего искать, нарисовав элементы матрицы:
Учитывая, что первая цифра будет соответствовать счетчику i, а вторая — счетчику j, то из таблицы можно вывести формулы:
Главная диагональ матрицы имеет формулу: i=j
Побочная диагональ матрицы имеет формулу: n=i+j-1 (или j=n-i+1)
где n — размерность квадратной матрицы
Преобразование числового значения осуществляется посредством процедуры Str:
Str(<числовая величина>, <строка>);
Пример программы:
program stroki; uses crt; var s: string; c: integer; begin c:=1000; str(c, s); write(s); {s = ‘1000’} end. |
«A»: Ввести с клавиатуры символьную строку и заменить в ней все буквы «а» на «б» и все буквы «б» на «а» (заглавные на заглавные, строчные на строчные).
Пример:
Введите строку: ааббААББссСС Результат: ббааББААссСС |
«B»: Ввести с клавиатуры символьную строку и определить, сколько в ней слов. Словом считается последовательности непробельных символов, отделенная с двух сторон пробелами (или стоящая с краю строки). Слова могут быть разделены несколькими пробелами, в начале и в конце строки тоже могут быть пробелы.
Пример:
Введите строку: Вася пошел гулять Найдено слов: 3 |
«C»: Ввести с клавиатуры символьную строку и найдите самое длинное слово и его длину. Словом считается последовательности непробельных символов, отделенная с двух сторон пробелами (или стоящая с краю строки). Слова могут быть разделены несколькими пробелами, в начале и в конце строки тоже могут быть пробелы.
Пример:
Введите строку: Вася пошел гулять Самое длинное слово: гулять, длина 6 |
Строки в Паскале
Строка в Pascal – это последовательность символов заключенных в апострофы. Переменную строкового типа данных определяет слово string:
Var <имя_переменной>: string[<длина строки>]; |
Длина строки может и не указываться, тогда она будет равна максимально возможному количеству символов — 255.
Для вывода строки указывается строка без скобок и их содержащего:
write(sing); |
Объединить строки можно при помощи операции +, а также воспользовавшись функцией Concat. Следующая программа сначала выводит строку, в которой объединены две другие, а затем выводит все три имеющиеся строковые переменные посредством функции Concat.
«A»: Заполнить массив случайными числами и отсортировать его. Ввести число X. Используя двоичный поиск, определить, есть ли в массиве число, равное X. Подсчитать количество сравнений.
Пример:
Массив: 1 4 7 3 9 2 4 5 2 После сортировки: 1 2 2 3 4 4 5 7 9 Введите число X: 2 Число 2 найдено. Количество сравнений: 2 |
Пример:
Массив: 5 3 4 2 1 6 3 2 После сортировки: 2 3 4 5 6 3 2 1 |
Задания на урок:
«A»: Напишите программу, в которой сортировка выполняется «методом камня» – самый «тяжёлый» элемент опускается в конец массива.
«B»: Напишите вариант метода пузырька, который заканчивает работу, если на очередном шаге внешнего цикла не было перестановок.
«С»: Напишите программу, которая сортирует массив по убыванию суммы цифр числа. Используйте функцию, которая определяет сумму цифр числа.
Массив: 1 2 3 4 5 6 Результат: 6 1 2 3 4 5 |
Массив: 1 2 3 4 5 6 Результат: 3 2 1 6 5 4 |
Массив: 20 -90 15 -34 10 0 Результат: 20 15 10 -90 -34 0 Количество положительных элементов: 3 |
Массив: 1 2 3 4 5 Минимальный элемент: A[1]=1 Максимальный элемент: A[5]=5 |
Массив: 1 2 3 1 2 Что ищем: 2 Нашли: A[2]=2, A[5]=2 |
Массив: 1 2 3 1 2 Что ищем: 6 Ничего не нашли |
«A»: Заполните массив случайными числами в интервале [0,100] и найдите среднее арифметическое его значений.
Пример:
Массив: 1 2 3 4 5 Среднее арифметическое 3.000 |
«B»: Заполните массив случайными числами в интервале [0,100] и подсчитайте отдельно среднее значение всех элементов, которые <50, и среднее значение всех элементов, которые ≥50.
Пример:
Массив: 3 2 52 4 60 Ср. арифм. элементов [0,50): 3.000 Ср. арифм. элементов [50,100]: 56.000 |
«C»: Заполните массив из N элементов случайными числами в интервале [1,N] так, чтобы в массив обязательно вошли все числа от 1 до N (постройте случайную перестановку).
Пример:
Массив: 3 2 1 4 5 |
Удачи!
Введите два натуральных числа: 7006652 112307574 НОД(7006652,112307574)=1234 |
Введите натуральное число: 378 378 = 2*3*3*3*7 |
Введите натуральное число: 4 Количество разложений: 4 |
«A»: Напишите логическую функцию, которая определяет, является ли переданное ей число совершенным, то есть, равно ли оно сумме своих делителей, меньших его самого.
Пример:
Введите натуральное число: 28 Число 28 совершенное |
Пример:
Введите натуральное число: 29 Число 29 не совершенное |
Пример:
Введите два натуральных числа: 7006652 112307574 НОД(7006652,112307574) = 1234 |
«B»: Напишите функцию, которая определяет среднее арифметическое цифр переданного ей числа.
Пример:
Введите натуральное число: 123 Среднее арифметическое цифр числа 123 равно 2 |
«C»: Напишите функцию, которая «переворачивает» число, то есть возвращает число, в котором цифры стоят в обратном порядке.
Пример:
Введите натуральное число: 1234 После переворота: 4321 |
Удачи!
Введите три натуральных числа: 10 15 5 5 10 15 |
Введите числитель и знаменатель дроби: 25 15 После сокращения: 5/3 |
Введите два натуральных числа: 10 15 НОД(10,15)=5 НОК(10,15)=30 |
Задание на урок:
«A»: Напишите процедуру, которая принимает параметр – натуральное число N – и выводит на экран линию из N символов '–'.
Пример:Введите N: 10 ---------- |