- •Основные этапы проектирования программ
- •Тема: Числовые типы данных. Выражения. Стандартные функции. Решение задач линейной структуры Числовые типы
- •Выражения и операторы действия
- •Ввод и вывод данных
- •Лабораторная работа №1 Тема: Числовые типы данных. Стандартные функции. Задачи линейной структуры Задание 1
- •Задание 2
- •Указание к выполнению: перед составлением программы необходимо выполнить следующие этапы:
- •Образец выполнения задания
- •Writeln(‘значение искомого выражения равно’, y:8:4); {вывод результата на экран}
- •Образец выполнения задания
- •Тема: Логические выражения. Логический тип. Условный оператор. Оператор выбора. Программирование разветвляющихся алгоритмов
- •Логический тип
- •Условный оператор
- •Оператор выбора
- •Лабораторная работа №2 Тема: Логические выражения. Логический тип. Условный оператор. Оператор выбора. Программирование разветвляющихся алгоритмов
- •Задание 2
- •Образец выполнения задания
- •Текст программы
- •Тема: Циклические структуры. Программирование циклических алгоритмов. Циклы
- •Простой арифметический цикл (цикл с параметром)
- •Арифметический цикл с произвольным шагом
- •Итерационные циклы
- •Оператор цикла с постусловием
- •Оператор цикла с предусловием
- •Лабораторная работа №3 Тема: Циклические структуры. Программирование циклических алгоритмов. Задание 1
- •Текст программы
- •Приложение: работа в среде программирования Паскаль
- •Работа с окнами
- •Редактирование текста программы
- •Пошаговое выполнение программы
- •Как посмотреть результат выполнения программы?
- •Литература
- •Содержание
Образец выполнения задания
Задача: Найти сумму цифр трехзначного натурального числа.
Для хранения самого числа мне потребуется переменная N, которая может принимать значения от 100 до 999, поэтому ее тип можно определить как диапазон 100..999 или как word. Для хранения значений трех цифр в записи числа N мне потребуются три переменные ed (единицы), des (десятки) и sot (сотни). Каждая из этих переменных может принимать значения от 0 до 9, поэтому их тип можно определить как диапазон 0..9 или как byte. Для хранения значения суммы цифр мне потребуется переменная S, которая может принимать значения от 1 до 27, поэтому ее тип можно определить как byte.
Входными данными в этой задаче является число N. Его значение должно быть задано до начала вычислений. Ввод числа буду осуществлять с клавиатуры с помощью процедуры readln().
Выходными данными в задаче является значение суммы цифр, т.е. переменная S. Вывод переменной буду осуществлять с помощью процедуры writeln(). Т.к. переменная S натуральное число, то формат вывода можно не задавать.
Ход решения задачи:
ввод числа N;
задам начальное значение переменной S=0;
найду число единиц в данном числе, как остаток от деления на десять: ed= N mod 10;
найду число десятков в данном числе. Для этого отброшу единицы N div 10, а от оставшегося результата найду остаток от деления на 10: des=(N div 10) mod 10
найду число сотен в данном числе как целую часть от деления на 100: sot= N div 100;
найду сумму цифр данного числа: S= ed+des+sot;
выведу на экран значение переменной S.
Тестовая проверка: пусть число N=735. Проверим вычисления. ed=N mod 10=735 mod 10=5; des= (N div 10) mod 10 = (735 div 10) mod 10 = 73 mod 10=3; sot= N div 100= 735 div 100=7; S=ed+des+sot=5+3+7=15.
Текст пррограммы:
Program zadacha1_3;
Var
N: word;
ed, des, sot: 0..9;
s: byte;
begin {начало программы}
writeln(‘введите трехзначное число’);
readln(N);
s:=0;
ed:=N mod 10;
des:= (N div 10) mod 10;
sot:= N div 100;
s:= ed+des+sot;
writeln(‘сумма цифр числа ‘, N, ‘ равна ‘, s);
end.
Дальнейшие действия:
Откомпилировать программу (клавиша <F9>), исправить ошибки, допущенные при наборе.
Запустить программу на исполнение (сочетание клавиш <Ctrl>+<F9>).
Задать тестовые значения переменных. Посмотреть результат выполнения программы, нажав сочетание клавиш <Alt>+<F5>, оценить полученный результат.
Запустить программу повторно, задать произвольные значения переменных, записать полученные результаты.
Вариант 1
Объем первого файла составляет m1 Кбайт, n1 байт. Объем второго файла – m2 Кбайт, n2 байт. Определить объем файла, полученного слиянием данных двух.
Вариант 2
Объем файла составляет m Кбайт, n байт. Архивация уменьшает его объем на 20%. Определить объем файла после архивации.
Вариант 3
Текущее показание электронных часов: m часов (0 m23), n минут (0 n 59), k секунд (0 k 59). Какое время будут показывать часы через p часов, q минут, r секунд?
Вариант 4
Дана величина A, выражающая объем информации в байтах. Определить сколько полных Мбайт, Кбайт и байт содержит величина A?
Вариант 5
Дано трехзначное натуральное число. Найти разность между заданным числом и суммой его цифр.
Вариант 6
Дано положительное вещественное число, имеющее целую и дробную части. Поменять местами цифры из целой и дробной части, стоящие справа и слева от дробной точки.
Вариант 7
Выяснить, на какой угол повернется часовая стрелка от положения 0 часов, 00 минут до того момента, когда пройдет h часов (h<12), m минут (m<60).
Вариант 8
Дано трехзначное натуральное число. Получить другое натуральное число, в котором порядок цифр изменен на противоположный.
Вариант 9
Дано вещественное число с двумя цифрами в целой части и двумя цифрами в дробной части. Найти сумму цифр этого числа.
Вариант 10
Выяснить сколько полных часов и полных минут прошло от начала суток до того момента, когда часовая стрелка повернулась на f градусов (f<360).
Вариант 11
Дано вещественное число с двумя цифрами в целой части и одной цифрой в дробной части. Получить вещественное число, запись которого являлась бы зеркальным отображением исходного числа (например, 36.2 и 2.63).
Вариант 12
Идет k-я секунда суток. Определить, сколько полных часов и полных минут прошло от начала суток.
Вариант 13
Присвоить переменной d третью от конца цифру в записи положительного целого числа.
Вариант 14
Определить сколько часов, минут и секунд прошло между двумя данными моментами времени: h1 часов, m1 минут, s1 секунд и h2 часов, m2 минут, s2 секунд.
Вариант 15
Исходный объем информации составлял m Кбайт, n байт, k бит. Часть информации была утеряна, после чего объем составил m1 Кбайт, n1 байт, k1 бит. Определить объем утерянной информации.
