С помощью While. Repeat - это оператор цикла, который сначала делает, а потом думает "а надо ли было?". Цикл с Repeat выполнится всегда хотя бы один раз, даже если аргумент изначально не входит в диапазон.
Ну а If - это вообще не цикл.
1. Из-за ошибок программа не запустится.
- в блоке описания переменных отсутствует var
- clrscr не будет работать без подключенного модуля CRT. Да она и не особо нужна для решения этой задачи. Как и не нужен readln в предпоследней строке.
2. После устранения недостатков получим, что первый цикл:
Заполняет массив сл. значениями и выводит его на экран в одной строке.
for i:=1 to 10 do
begin
a[i]:=random(21)-10;
write(a[i]);
end;
3. Следующие строки кода делают реверс 1-ой половины массива:
//надо, чтобы a[1] стало a[5], a[5] стало a[1], a[2] cтало a[4], a[4] стало a[2],
//элемент a[3] не трогаем, так как он находится посередине и его не с кем менять
n:=0; //вспомогательная переменная, которая будет увеличиваться на 1 при //каждом выполнении тела цикла
for i:=1 to 2 do
begin
k:=a[i]; // в переменной k запоминаем значение a[i]
a[i]:=a[5-n]; // теперь a[i] = a[5-n]
a[5-n]:=k; // А элемент a[5-n] = бывшему значению a[i], которое сохранили в k
n:=n+1; //Для работы со следующей парой элементов увеличиваем n на 1
end;
4. За реверс второй половины отвечает этот код:
n:=0;
for i:=6 to 8 do
begin
k:=a[i];
a[i]:=a[10-n];
a[10-n]:=k;
n:=n+1;
end;
5. Ну и последний цикл выводит получившийся массив на экран:
for i:=1 to 10 do write(a[i]);
#include <iostream>
using namespace std;
//Ввести двумерный массив A 4×3. Определить в нём произведение тех элементов, чей модуль лежит вне диапазона [1;5]
int main()
{
int masA[4][3],a,b;
cout << "Vvedite a and b: ";
cin >> a >> b;
for (int i=0; i < 4; i++) {
for (int j=0; j < 3; j++)
{
masA[i][j] = rand() % b + a; //рандом
cout << masA[i][j] << " ";
}
cout << "\n";
}
int p = 1;
for (int i = 0; i < 4; i++) {
for (int j = 0; j < 3; j++)
{
if (abs(masA[i][j]) < 1 || (masA[i][j]) > 5)
p = p * masA[i][j];
}
}
cout << "Proizv= " << p;
return 0;
}
Черно-белое → 2 цвета → глубина цвета 1 бит (2^1=2).
размер 1020*649=661980 пикселей.
каждый пиксель кодируется 1 битом (выше посчитали) → 661980*1=661980 бит на всё изображение.
в 1 байте 8 бит → 661980 бит = 661980/8 байт = 82747,5 байт
2*4*6*8=384.
Я думаю так числа чётные. И произведение четных чисел на промежутке от 3-9.