Решение задачи №6 из главы 15
Primary tabs
Пользователь вводит целые числа в цикле. Запишите в массив целых чисел (из 3 элементов) все нечетные отрицательные. Как только массив будет заполнен, завершите цикл ввода новых значений пользователем и распечатайте полученный массив.
type // секция объявления типов myArr = array[1..3] of integer; // массив из 3 элементов var a: myArr; // объявляем переменную типа myArr i : integer; begin { обходим первый раз массив, значения которого ещё не инициализированы, с целью присвоить значения элементам } for i:=low(a) to high(a) do begin writeln('vvedite element massiva nomer ', i, ':'); // пояснение для пользователя readln(a[i]); // считываем элемент i массива 'a' из консоли end; writeln('elementi vvedennogo vami massiva:'); for i:=low(a) to high(a) do // обходим массив второй раз, теперь уже с целью вывода его значе if (a[i] mod 2 =1 ) AND (a[i]<0) then write(a[i], ' '); readln(); end.
- Log in to post comments
- 1867 reads
vedro-compota
Sun, 11/29/2020 - 16:39
Permalink
for i:=low(a) to high(a) do--
-- сработает только 3 раза, а по условию задачи цикл ввода может быть вообще бесконечным (напр. если пользователь вводит только положительные значения).
Также сейчас запись в массив идет без проверки условия
_____________
матфак вгу и остальная классика =)
gani84
Sun, 12/13/2020 - 13:26
Permalink
Исправил
vedro-compota
Sun, 12/13/2020 - 16:21
Permalink
while true do
-- перенести условие завершение в заголовок цикла.
_____________
матфак вгу и остальная классика =)