Ввод символов с клавиатуры.

Ввод символов с клавиатуры почти не отличается от ввода чисел с клавиатуры. Для того чтобы ввести какие-то символы (буквы, знаки и т.д.) с клавиатуры необходимо для переменных использовать символьный тип данных Char.

Функции Copy, Pos, процедуры Delete, Insert.

Функция Copy позволяет копировать из строки часть символов. Функция имеет 3 параметра. Copy (st, index, count). St-строка из которой копируют, Index-номер символа, с которого начинается копирование, Count-количество символов, которое будет ...

Применение логических операций с оператором IF.

В данном уроке мы рассмотрим применение логической операции And с условным оператором If.

Циклы и массивы

Сортировка простым включением и простым выбором.

Сортировка простым включением.
Пример 33. Методом простого включения упорядочить (отсортировать) в порядке возрастания массив из 8 целых чисел (44, 55,12,42, 94, 18, 06, 67).

ФАЙЛЫ ЗАПИСЕЙ

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

Как уже было сказано, циклы с условием делятся на циклы с предусловием и на циклы с постусловием. В этой статье рассказывается об использовании цикла с постусловием Repeat...Until для написания программ на языке Pascal.

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

Цикл с постусловием Repeat..Until.




    program ciklih4;
    uses crt;
    var sum, A:real;
    begin
    clrscr;
    SUM:=0;
    A:=0;
    repeat
    sum:=sum+A;
    write (‘Ведите число:’);
    readln (A);
    until A<0;
    writeln (‘Сумма чисел = ’,sum:5:3);
    readln
    end.



В строке №3 запишем 2 переменные: «SUM» – для хранения суммы и «A» для хранения значения введенного нами числа.

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

В строке №7 указываем первоначальное значение для переменной «A».

В строке №8 записываем оператор цикла Repeat (от англ. «повторять»). Все действия, которые записаны после оператора Repeat (строка №9 - №11) будут выполняться до тех пор, пока не выполнится условие в строке №12 (Until в пер с англ. «до»), т.е. пока переменная «A» не станет отрицательным числом.
Таким образом, получается, что в цикле выполняется 3 действия (строка №9 - №11). Сначала подсчитывается сумма (строка №9). Она, первоначальна, равна 0, т.к. sum=0 и A=0. Затем выводится сообщение на экран (строка №10), затем мы вводим с клавиатуры какое-нибудь число, и оно записывается в переменную «A». Если мы вводим положительное число, то опять подсчитывается сумма (строка №9), только теперь значение переменной «A» равно не 0, а тому числу, которое мы введем с клавиатуры. Соответственно, и сумма (sum) увеличится на это число.

repeat until

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

repeat until.


Дополнение к материалу.

Конструкция Repeat...Until подобна операторным скобкам Begin...End. Поэтому перед Until не обязательно ставить точку с запятой. Т. е. в конце строки №11 можно пропустить точку с зяпятой без каких-либо последствий для программы.

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


Предыдущая статья : Оператор цикла While..Do.

Оглавление : Уроки Паскаль. Циклы.

Следующая статья : Массивы в Pascal.


Комментарии  

 
0 # аня 25.11.2012 12:27
составьте программу подсчёта суммы полных чисел при введе с клавиатуры 120 значений(сделат ь в Repeat..Until.)
 
 
+1 # конец света 26.12.2012 14:50
:oops: :oops: :oops: :oops:
 
 
-9 # BIG CRAB 10.01.2013 14:51
должно быть 15

и где строка в коде , где задается количество суммируемых чисел ???
 
 
+3 # Антон 26.02.2013 19:36
А вот где: until A
 
 
-8 # BIG CRAB 10.01.2013 14:53
crt - это вроде подключение цветовой библиотеки .
и зачем она тут ???
 
 
+3 # Антон 24.02.2013 20:41
Да тут везде подключен crt, чтобы выполнить очистку экрана. Зачем -- я пока не понял. Может быть в Free Pascal какая-то особенность есть, например выводить какой-то свой текст перед выполнением программы...
 
 
0 # BIG CRAB 10.01.2013 15:09
извиняюсь :-* ))) все,разобрался )))
 
 
-3 # Лев 22.01.2013 20:14
Задачи какого типа может решать цикл с постусловием?
Чем такие задачи отличаются от цикла с предусловием?
 
 
+1 # popa 11.04.2022 10:40
:P :P :P
 
 
0 # X3 29.01.2013 12:33
Зачем строка 14?
что там считывать?
 
 
0 # Ростик 02.02.2013 17:06
без нее можно обойтись
 
 
+1 # Антон 24.02.2013 20:45
Эта строка нужна, чтобы программа после вывода результата мгновенно не закрылась. То есть, она покажет тебе результат и закроется только тогда, когда нажмешь [Enter]
 
 
-7 # Дима 25.01.2015 17:05
Помогите переделать программу под операторы until и repeat:

program nk;
var n,k:integer;
begin
k:=1; n:=0;
while k
 
 
-3 # вааааааааааааак 24.03.2016 14:30
:eek:
 
 
-4 # ПОМОГИТЕ!!!!!!!!!!!! 24.03.2016 14:31
:eek: :eek: :eek: :eek: :eek: :eek: :eek: :eek: :eek: :eek: :eek: :eek: :eek: :eek: :eek: :eek: :eek: :eek:
Скласти програму для знаходження добутку чисел від n до 1.
 
 
-6 # Александр Сергеевич 20.03.2017 05:39
Налейте мне на донышке пожалуй :lol: :lol: :lol: :lol: :lol: :lol: :lol: :lol: :o :o :o :o :o стааааааааа
 
 
-7 # Аня 04.04.2017 12:49
Ненавижу долбаный паскаль... Какая тварь его создала?! :sad: :cry:
 
 
-1 # popa 11.04.2022 10:41
:o :o :o 8)
 
 
-6 # НИКТО 04.04.2017 15:43
Тест умножения (цикл с постусловием repeat… until),исходные числа от 4 до 9 включительно, до пяти неправильных ответов
 
 
-6 # НИКТО 04.04.2017 15:44
вот как это решать
 
 
0 # 1. 16.08.2022 13:37
Until debug?
 
 
0 # 1, 16.08.2022 13:38
Until A=2?
 
   ГлавнаяПаскальЦиклы в ПаскальЦикл Repeat..Until.