Посчитать факториал числа

Задача.
Посчитать сумму N! (N - факториал).

Блок-схема

Программа на Pascal
Program factorial;
Var i,n:integer;
 factorial:real;
Begin
 Writeln('Введите N');
 Readln(N);
 factorial:=1;
 for i:=1 to N do
  factorial:=factorial*i;
 Writeln('Факториал N чисел равен = ',factorial:0:2);
 Readln;
End.

Сумма A чисел

Задача с оператором цикла с параметром.
Условие :
Сумма A чисел : S=a+a+...+a+a.
Программа на Pascal

Program summa_a;
Var i,n:integer;
 a,S:real;
Begin
 Writeln('Введите a, N');
 Readln(a,N);
 S:=0;
 for i:=1 to N do
  S:=S+a;
 Writeln('Сумма равна = ',S:0:2);
 Readln;
End.

Таким образом вам может пригодиться следующая Задача на подсчет суммы цифр у числа.
Такие задачи просты и поняты для начинающих программистов на языке Pascal.

Оператор цикла с параметром

Оператор цикла с параметром

Один из основных циклических операторов, используемых при решении задач.

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

В Pascal этот оператор реализуется следующим образом :

For <Инициализация параметра цикла> to <Конечное значение параметра>
 do <Оператор 1> ;
For <Инициализация параметра цикла> to <Конечное значение параметра>
 downto <Оператор 1>;

Оператор цикла может быть простым и составным, как и оператор выбора Case.
Если после do стоит несколько операторов, то ставиться операторные скобки. Именно такой оператор называется составным .

Как же можно изменять шаг в этом цикле? Шаг изменения параметра в цикле с параметром может быть только 1 или -1. Других изменений, например 2, не возможно реализовать в этом цикле.

Если значение параметра изменяется от меньшего числа к большему, то используется оператор to :

For I := 1 to 10 do <Оператор> ;


Если значение параметра изменяется от большего к меньшему числу, то используется оператор downto :


For I := 10 to 1 downto <Оператор> ;


Один из главных плюсов оператора цикла с параметром является автоматическая модификация. Это упрощает решение задач программисту.

Условие выхода из цикла является достижением параметра цикла порогового значения цикла

Параметр цикла должен быть целым числом.

Циклические вычислительные процессы

Циклические вычислительные процессы. Круговорот воды в природе

Циклические вычислительные процессы

В программировании мы часто сталкиваемся с задачами, в которых встречается процессы, которые повторяются. Поэтому мы должны знать и уметь пользоваться таким понятием как «циклические вычислительные процессы».

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

Что же такое цикл в программировании?

Цикл – в программировании называется многократное повторение одних и тех же действий или вычислений, но по одним и тес же зависимостям с различными значениями переменных.

С понятием цикл мы встречаемся не только в программировании. Во многих областях нашей жизни существуют циклы.

К примеру – круговорот воды в природе, это естественный цикл в нашей жизни.

А теперь рассмотрим общие правила и понятия используемые в вычислительных циклах.

Этапы циклического процесса

В общем случае цикл должен быть реализован за 4 этапа :

  • 1 этап – подготовка цикла (инициализация).
    Задание начального значения параметру и переменной цикла.
    Параметр цикла – эта величина, которая считает число шагов цикла (число повторений цикла).
    Переменная цикла – это величина, которая изменяет свое значение на каждом этапе цикла.
    Инициализация – это задание начальных значений параметру и переменной цикла.
  • 2 этап – тело цикла.
    Это многократное повторение действие в цикле или вычислений по одним и тем же математическим зависимостям с разными значениями переменных.
  • 3 этап – модификация (изменение) цикла.
  • 4 этап – управление циклом.
    Это проверка условия на продолжение или начало цикла. 
В pascal существует 3 оператора цикла, которые могут реализовать любую алгоритмически – циклическую структуру :
  1. Оператор цикла с параметром 
  2. Оператор цикла с предусловием 
  3. Оператор цикла с постусловием
Подробно их мы рассмотрим в следующих статья.

Вычисление суммы цифр заданного числа

Задача.
Написать программу вычисления суммы цифр заданного четырехзначного целого числа.

Программа на Pascal

Program  summ;
Var a,b,c,d,n,summa:integer;
Begin
     writeln('Введите четырехзначное число ');
     readln(n);
     a:=n mod 10;
     b:=n div 1000;
     c:=(n mod 100) div 10;
     d:=(n mod 1000) div 100;
     summa:=a+b+c+d;
     writeln('Сумма равна ',summa);
Readln;
End.

Оператор выбора на блок-схеме


Оператор выбора Case

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

Реализовать это в программе без оператора выбора будет не так-то просто, хотя и не невозможно.

Поэтому знание и умение использовать оператор выбора Case важно в багаже знаний любого программиста.

Для начало определим, чем же является оператор вариантов ( выбора ).

Оператор выбора или вариантов Case

Оператор выбора Case – это форма условного оператора (А условные оператор, как нам уже известно, используется в разветвляющихся вычислительных процессах), используемая для множественного выбора.

Иногда оператор Case называют еще оператором множественного выбора. Верны оба названия. Суть от них не меняется.

Оператор выбора на блок-схеме

Оператор выбора Case

Основы оператора выбора Case

Определимся с основными понятиями, изображенными на блок-схеме.

Селектор – это переменная или выражение порядкового типа данных.

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

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

К порядковому типу данных не относиться только вещественный тип (real).

Case <Селектор> Of 
  <Метка 1> : <Оператор 1> ;
  <Метка 2> : <Оператор 2> ;
  . . . . . . . . . . . .  ;
  <Метка N> : <Оператор N  ;
End;

В качестве меток используется одно из значений селектора.

Это значит, что селектор каким-то образом изменяет свое значение, а эти значения уже известны, и они уже присвоены меткам. В таком случае значение селектора совпадает с какой-либо меткой, и затем выполняется действие, указанное после метки.

Если действие должно выполняться при нескольких значениях селектора ( оператора case ), то допускается перечисление этих меток через запятую. ( Т.е. для одинаковых действий )

В операторе  case можно использовать служебное слово else, если не выполняется ни одно действие по заданному значению селектора.

Case <Селектор > Of 
  <Метка 1> : <Оператор 1> ;
  <Метка 2> : <Оператор 2> ;
  . . . . . . . . . . . .. ;
  <Метка N> : <Оператор N>
  Else <Оператор N+1> ;
End;


Если после метки стоит не одни оператор, а несколько, то они заключаются в операторные скобки (begin – end ;)

Предоставляю вашему вниманию задачу на вычисление суммы цифр в числе. Часто встречается такое условие в лабораторных работах.