Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Урок из серии Pas ABC.doc
Скачиваний:
10
Добавлен:
17.08.2019
Размер:
694.78 Кб
Скачать

Решение

Обозначим:

n - вводимое число;

m - дубликат числа n;

a - перевертыш числа n;

i - переменная цикла для создания перевертыша.

Program Primer_2;

Var n,m,a,i : Integer;

Begin

Writeln('введите целое число, не большее 9999');

Readln(n);

m:=n;{создаем дубликат числа}

a:=0;{перевертыш}

{создание перевертыша}

For i=1 To 4 Do {так как число четырехзначное}

Begin

a := a*10+m Mod 10;

m := m Div 10;

end;

if a = n then writeln('Да!') else writeln('Нет.');

{Если перевертыш равен данному числу, то выводим "Да",

иначе - "Нет"}

End.

До встречи на следующем уроке.

Урок 12 из серии: "Язык программирования Паскаль".

Обработка числовых последовательностей основывается на использовании оператора цикла. Алгоритм для обработки последовательнойтей относится к одному из двух типов: поиск, проверка условий.

Для последовательностей характерно, что в каждый момент времени нам доступен только один элемент последовательности. Поэтому все алгоритмы строятся с учетом однократного последовательного просмотра.

На этом уроке рассмотрим несколько программ на языке программирования Паскаль. В каждой из них одновременно рассматривается только очередной элемент последовательности, без учета остальных (массивы не используются). Алгоритиы для решения таких задач называются алгоритмами с линейным поиском.

Пример 1. Вводится последовательность из N целых чисел. Найти сумму всех отрицательных чисел.

Переменные:

n - количество чисел; i - переменная цикла; x - очередное число; sum - сумма отрицательных чисел.

program primer_1;

Var i,n,x,sum:integer;

Begin

Writeln('Введите длину последовательности N= ');

Readln(n);

Sum:=0;

For I:=1 to n do

Begin

Writeln('Введите ', i, '-ое число: ’);

Readln(x);

if x < 0 then sum:=sum+x

end;

If sum = 0

then writeln('Отрицательных чисел нет.’)

Else writeln(‘Сумма отрицательных чисел = ’, sum);

End.

Пример 2. Вводится последовательность ненулевых чисел, 0 – конец последовательности. Определить, сколько раз последовательность меняет знак.

Переменные:

old - предыдущее число; new- обрабатываемое число; k - количество смен знака ; i - порядковый номер числа в последовательности.

program primer_2;

Var old, new: real;

k: integer;

Begin

Write('Введите первое число: ');

Readln(old);

Write('Введите второе число: ’);

Readln(new);

k:=0; i:=2;

Repeat

If new*old < 0 then k := k+1;

old:=new;

i:=i+1;

Write(‘Введите ',i, '-ое число:’);

Readln(new);

Until new = 0;

If k > 0

then writeln('Последовательность меняет знак ',k,' раз')

else writeln('Последовательность не меняет знак ’);

end.

До встречи на следующем уроке.

Урок 13 из серии: "Язык программирования Паскаль"

За наличие подпрограмм как средства структурирования программ язык программирования Паскаль называется процедурно-ориентированным.

Подпрограмма - последовательность операторов языка, предназначенных для решения некоторой подзадачи. Каждая подпрограмма имеет имя, по которому можно к ней обратиться.

Использование подпрограмм:

  1. позволяет сократить объем программы;

  2. улучшает структуру программы с точки зрения ее читаемости и наглядности;

  3. уменьшает вероятность ошибок и облегчает процесс отладки.

Подпрограммы в языке Паскаль реализованы посредством процедур и функций. Имея один и тот же смысл и аналогичную структуру, процедуры и функции различаются назначением и способом их использования.

Функция передает в точку вызова единственный результат как значение этой функции. Имя функции может входить в выражение как операнд.

Процедура может возвращать в вызывающую программу несколько значений или не одного. Процедура не может выступать как операнд в выражении.