FOR i = 1 TO 100 IF (i MOD 2) <> 0 THEN s$ = s$ + STR$(i) + " " END IF NEXT i
PRINT s$
Дополнение :
Чисел много, на экран не убираются
Будем из запоминать в текстовую переменную s$
s$ = "" -- Инициализирует пустую строковую переменную FOR i = 1 TO 100 -- цикл от 1 до 100 IF (i MOD 2) <> 0 THEN -- нечетное число то, у которого отстаток от деления -- на 2 не равен 0 -- <> логический оператор НЕ РАВНО -- MOD - оператор возвращает остаток от деления s$ = s$ + STR$(i) + " " -- Положить в конец переменной s$ строковое -- предствление числовой переменной i END IF -- конец блока цикла NEXT i PRINT s$ -- вывод переменной s$ на экран
Всё таки есть сомнение нужна сумма нечётных элементов массива или сумма элементов массива с нечётными индексами?
В данной прграмме подсчитывается сумма нечётных элементов массива
Если же нужно второе то строку отмеченную {*} следует заменить на
if (i mod 2)>0 then s:=s+a[i];
Program massiv;
Uses Crt;
var a:array[1..10] of integer;
i,sum,ch:integer;
begin
clrscr;
write('Введите число:' );
readln(ch);
write('Введите элементы массива:');
sum:=0;
for i:=1 to 10 do
begin
readln(a[i]);
if (a[i] mod 2)>0 then s:=s+a[i]; {*}
end;
writeln; write('Исходный массив: ');
for i:=1 to 10 do
begin
write(a[i]);
write(' ' );
end;
writeln; writeln;
write('Сумма нечётных элементов массива: ',sum)
writeln; writeln;
write('Номера элементов которые больше числа ',ch,' : ' );
for i:=1 to 10 do
if (a[i]>ch) then
begin
write(i:2);
write(' ' );
end;
writeln; writeln;
write('Положительные числа которые кратны числу ',ch,' : ' );
for i:=1 to 10 do
if (a[i]>0) and (a[i] mod ch=0) then
begin
write(a[i]);
write(' ' );
end;
readkey;
end.
s$ = ""
FOR i = 1 TO 100
IF (i MOD 2) <> 0 THEN
s$ = s$ + STR$(i) + " "
END IF
NEXT i
PRINT s$
Дополнение :
Чисел много, на экран не убираются
Будем из запоминать в текстовую переменную s$
s$ = "" -- Инициализирует пустую строковую переменную
FOR i = 1 TO 100 -- цикл от 1 до 100
IF (i MOD 2) <> 0 THEN -- нечетное число то, у которого отстаток от деления
-- на 2 не равен 0
-- <> логический оператор НЕ РАВНО
-- MOD - оператор возвращает остаток от деления
s$ = s$ + STR$(i) + " " -- Положить в конец переменной s$ строковое
-- предствление числовой переменной i
END IF -- конец блока цикла
NEXT i
PRINT s$ -- вывод переменной s$ на экран