
- •Смоленский гуманитарный университет
- •Часть 1. Основы алгоритмизации
- •Тема 1 «Алгоритмы линейной структуры»
- •Ход работы
- •Тема 2 «Алгоритмы разветвляющейся структуры»
- •Ход работы
- •Тема 3 «Алгоритмы циклической структуры»
- •Ход работы
- •Тема 4 «Вложенные циклы»
- •Ход работы
- •Тема 5 «Массивы»
- •Ход работы
- •Часть 2. Программирование
- •Тема 6 «Линейная структура программы»
- •Примеры решения задач
- •Ход работы
- •Тема 7 «Разветвляющая структура программы»
- •Примеры решения задач
- •Ход работы
- •Тема 8 «Циклическая структура программы»
- •Примеры решения задач
- •1 Способ
- •2 Способ.
- •1 Способ
- •2 Способ
- •1 Способ
- •2 Способ
- •1 Способ
- •2 Способ
- •Ход работы
- •Тема 9 «Понятие подпрограммы. Организация процедур и функций»
- •Примеры решения задач
- •Ход работы
- •Тема 10 «Рекурсия»
- •Примеры решения задач
- •Ход работы
- •Тема 11 «Строковый тип данных. Методы работы со строками»
- •Ход работы
- •Тема 12 «Тип данных массив»
- •Примеры решения задач
- •1 Способ
- •2 Способ
- •1 Способ
- •2 Способ
- •1 Способ
- •2 Способ
- •Алгоритм
- •1 Способ
- •2 Способ
- •1 Способ
- •2 Способ
- •Алгоритм
- •Работа программы
- •Ход работы
- •Тема 13 «Тип данных - запись»
- •Ход работы
- •Тема 14 «Файлы. Типы файлов. Методы работы с файлами»
- •Примеры решения задач
- •1 Способ
- •2 Способ
- •Ход работы
- •Тема 15 «Множества»
- •Ход работы
- •Тема 16 «Работа с мультимедиа»
- •Ход работы
- •Максимова Наталья Адександровна Основы программирования
- •214014, Г. Смоленск, ул. Герцена, 2
1 Способ
Program Problem15; { Вычисление факториала числа n! }
uses Crt;
var
n, f, i : longint;
begin
write('Введите натуральное число '); readln(n);
f := 1;
if n <> 0 then for i := 1 to n do f := f*i;
writeln('Факториал числа ', n, ' равен ', f)
end.
2 Способ
Program Problem1a;
uses WinCrt;
var
n, i, f : longint;
begin
write('Введите натуральное число '); readln(n);
f := 1;
if n <> 0 then for i := n downto 1 do f := f*i;
writeln('Факториал числа ', n, ' равен ', f)
end.
Задача 16. Квадрат любого натурального числа n равен сумме n первых нечетных чисел:
12 = 1
22 = 1 + 3
32 = 1 + 3 + 5
42 = 1 + 3 + 5 + 7
52 = 1 + 3 + 5 + 7 + 9
. . . . . . . . . . . . . . . . . . .
Основываясь на этом свойстве, составить программу, позволяющую напечатать квадраты натуральных чисел от 1 до n.
Решение
Program Problem16;
uses Crt;
var
i, n, s, k: integer;
begin
writeln('Введите натуральное число, до которого надо');
write('выводить квадраты чисел '); readln(n);
writeln('Квадраты чисел следующие:');
s := 0; k := 1;
for i := 1 to n do
begin
s := s + k;
writeln('Квадрат числа ', i, ' равен ', s);
k := k + 2
end
end.
Задача 17. Напечатать все четырехзначные числа, в десятичной записи которых нет двух одинаковых цифр.
Решение
1 Способ
Program Problem17; { 1 - й способ }
uses WinCrt;
var
t, s, d, e : integer;
begin
writeln('Все четырехзначные числа из разных цифр');
for t := 1 to 9 do
for s := 0 to 9 do
for d := 0 to 9 do
for e := 0 to 9 do
if (t <> s) and (t <> d) and (t <> e) and (s <> d) and
(s <> e) and (d <> e)
then write(t*1000 + s*100 + d*10 + e, ' ')
end.
2 Способ
Program Problem17a; { 2 - й способ }
uses WinCrt;
var
t, s, d, e : integer;
begin
writeln('Все четырехзначные числа из разных цифр');
for t := 1 to 9 do
for s := 0 to 9 do if s <> t then
for d := 0 to 9 do if (d <> s) and (d <> t) then
for e := 0 to 9 do
if (e <> d) and (e <> s) and (e <> t)
then write((((t*10 + s)*10 + d)*10) + e, ' ')
end.
Задача 18. Тройки натуральных чисел a, b, c, удовлетворяющих равенству: - называются Пифагоровыми числами.
Например, 3, 4 и 5 являются Пифагоровыми числами, поскольку
Составить программу для нахождения и печати всех Пифагоровых чисел, не превышающих 20.
Решение
Program Problem18;
uses WinCrt;
var
a, b, c : integer;
begin
writeln('Тройки Пифагоровых чисел из промежутка [1; 20]');
for a := 1 to 20 do
for b := 1 to a do
for c := 1 to 20 do
if a*a + b*b = c*c then writeln(a, ' ', b, ' ', c)
end.