М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации

Объясните как работают циклы (for, while, repeat) в паскале. желательно максимально простым и понятным языком, без использования супер-заумных терминов

👇
Ответ:
whiteandblackca
whiteandblackca
27.05.2020
Цикл For                                                      

"Цикл со счётчиком"

В начале присваивает заданной переменной (переменная-счётчик) начальное число. Переменной-счётчиком может быть любая переменная типа integer, затем в зависимости от направления прибавляет (to) или убавляет (downto) счётчик на единицу. Цикл начинает повторение пока счётчик будет меньше или равен второму числу. Когда счётчик стал больше второго числа, цикл выполняет строки команд до конца, но уже не начинает повторять из снова.

В строках с командами цикла не должно быть команды, которая изменяет значение счётчика, иначе будет ошибка. Счётчик нельзя изменять  внутри цикла пока он идёт.

Запись

for ПеременнаяСчётчик := Число Направление Второечисло do

begin

 Строки с командами, которые должен повторять цикл;

end;

Пример

Программа, которая выводит числа от 5 до 10 и в конце пишет "Конец"

program raf105;

var i: integer;

begin

for i:=5 to 10 do

begin

 writeln(i);

end;

writeln('Конец');

end.

Цикл While                                                  

"Цикл с условием старта"

Начинает повторение, только если соблюдено заданное условие

Запись

while Условие do

begin

 Строки с командами, которые должен повторять цикл;

end;

Пример

Программа, которая просит ввести 1, если введено не 1, то просит ввести снова. Когда введено 1, пишет "Вы ввели 1. Конец"

program raf105;

var a: integer;

begin

write('Введите 1: ');

readln(a);

while a <> 1 do

begin

 write('Вы ввели не 1. Введите число снова: ');

 readln(a);

end;

writeln('Вы ввели 1. Конец');

end.

Цикл Repeat                                               

"Цикл с условием завершения"

Похож на цикл While, только заканчивает повторение, если соблюдено условие. Обычно используется если цикл нужно повторить хотя бы 1 раз.

Запись

repeat

 Строки с командами, которые должен повторять цикл;

until Условие;

Пример

Программа, которая запрашивает пароль, если введено 123, то выводит "Конец" если введено не 123, то выводит сообщение "Введите пароль снова"

program raf105;

var a: integer;

begin

a:= 0;

repeat

 if a = 0

   then write('Введите пароль: ')

   else write('Введите пароль снова: ');

 readln(a);

 until a = 123;

 writeln('Конец');

end.

4,8(51 оценок)
Открыть все ответы
Ответ:
iIИльяIi
iIИльяIi
27.05.2020
Разветвляющимися называется такой алгоритм, в котором выбирается один из нескольких возможных вариантов вычислительного процесса. каждый подобный путь называет "ветвью алгоритма".

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

простым условием (отношением)  называется выражение, составленное из двух арифметических выражений или двух текстовых величин (иначе их еще ), связанных одним из знаков:

< - меньше,

> - больше,

< = - меньше, или равно

> = - больше, или равно

< > - не равно

= - равно

например, простыми отношениями являются следующие:

x-y> 10; k< =sqr(c)+abs(a+b); 9< > 11; ‘мама’< > ‘папа’.

в примерах первые два отношения включают в себя переменные, поэтому о верности этих отношений можно судить только при подстановке некоторых значений:

если х=25, у=3, то отношение x-y> 10 будет  верным, т.к. 25-3> 10

если х=5, у=30, то отношение x-y> 10 будет неверным, т.к. 5-30< 10

проверьте верность второго отношения при подстановке следующих значений:

а) k=5, a=1, b=-3, c=-8

b) k=65, a=10, b=-3, c=2

4,5(24 оценок)
Ответ:
abdulismailova2
abdulismailova2
27.05.2020
// PascalABC.NET 3.1, сборка 1230 от 27.04.2016
begin
  var m:=ReadInteger('Количество элементов в массиве А (m):');
  var n:=ReadInteger('Количество элементов в массиве B (n):');
  var k:=ReadInteger('Позиция вставки k (1<k<m):');
  if (k>1) and (k<m) then begin
    var a:=ArrRandom(m,1,99); Writeln('Массив A'); a.Println;
    var b:=ArrRandom(n,1,99); Writeln('Массив B'); b.Println;
    Writeln('Результат вставки'); (a[:k]+b+a[k:]).Println
    end
  else Writeln('Вы нарушили условие 1<k<m')
end.

Тестовое решение
Количество элементов в массиве А (m): 10
Количество элементов в массиве B (n): 6
Позиция вставки k (1<k<m): 4
Массив A
68 64 30 75 36 15 50 39 92 26
Массив B
56 68 97 30 95 63
Результат вставки
68 64 30 75 56 68 97 30 95 63 36 15 50 39 92 26
4,4(17 оценок)
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ