1.Цикл с постусловием — цикл, в котором условие проверяется после выполнения тела цикла. Отсюда следует, что тело всегда выполняется хотя бы один раз. В языке Паскаль этот цикл реализует оператор repeat.. until ; в Си — do.
2 Виды циклов
Безусловные циклы
Цикл с предусловием
Цикл с постусловием
Цикл с выходом из середины
Цикл со счётчиком (или цикл для)
Совместный цикл
До выход из цикла
Пропуск итерации.
3.do… while — цикл с постусловием; for — параметрический цикл (цикл с заданным числом повторений).
4.Если заранее неизвестно число повторений цикла, то можно использовать цикл с постусловием. Сначала выполняется тело цикла, затем проверяется условие. Если оно ложно, то выполняется тело цикла. Если условие истинно, то цикл считается выполненным.
var
A: array [1..100, 1..100] of integer;
i, j, n, y, mini, minj, maxi, maxj, temp: integer;
const
format = 4;
begin
Randomize;
writeln('Введите колличество строк и столбцов через пробел (пример: 3 4)');
read(n, y);
writeln('Исходный массив');
for i := 1 to n do
begin
for j := 1 to y do
begin
A[i, j] := random(40) - 20;
write(A[i, j] : format);
end;
writeln;
end;
mini := 1;
minj := 1;
maxi := 1;
maxj := 1;
for i := 1 to n do
for j := 1 to y do
begin
if A[i, j] < A[mini, minj] then
begin
mini := i;
minj := j;
end ;
if A[i, j] > A[maxi, maxj] then
begin
maxi := i;
maxj := j;
end ;
end;
writeln;
WriteLn('Минимальный = ', A[mini, minj], ' в ', mini, ' строке ', minj, ' колоне.');
WriteLn('Максимальный = ', A[maxi, maxj], ' в ', maxi, ' строке ', maxj, ' колоне.');
temp := A[maxi, maxj];
A[maxi, maxj] := A[mini, minj];
A[mini, minj] := temp;
writeln;
writeln('Преобразованный массив');
for i := 1 to n do
begin
for j := 1 to y do
write(A[i, j] : format);
writeln;
end;
readln;
end.
#include<iostream>
using namespace std;
long double fac(int N)
{
if(N < 0) // если пользователь ввел отрицательное число
return 0; // возвращаем ноль
if (N == 0) // если пользователь ввел ноль,
return 1; // возвращаем факториал от нуля - не удивляетесь, но это 1 =)
else // Во всех остальных случаях
return N * fac(N - 1); // делаем рекурсию.
}
int main()
{
int N;
cout << "enter N: " ;
cin >> N;
for(int i = 0; i < N; i++)
cout << "a[ " << i << " ] = " << 1/fac(i) << endl;
}
данная программа вычисляет значения ряда, до N-го члена ряда