Действия: переписать подряд в массив Y положительные элементы X
Массив: x(20)
Условие: -10<= x(с индексом i)<=5
Вот начал писать, а как дальше не знаю:
Program L2;
uses crt;
Var
x:array (1..20) of integer;
y:array (1..5) of integer;
z:integer;
Begin
clrscr
for z:=1 to 20 do
x[x-]:=
Вот только до этого момента сделал, помогите дорешать и блок-схему построить пожалуйста!! !
Другие языки программирования и технологии
помогите с написание программы плиз:
Доброго времени суток.
Немного не так, Wolf. Вы переписываете в массив Y числа из диапазона (-10 <= x[ i]) and (x[ i] >= 5), а по условию требуется переписать "положительные элементы X". Далее, массив объявлен как x:array [1..20] of integer;, а в цикле вы обращаетесь к нулевому элементу - ошибка выполнения обеспечена. Третье, "Условие: -10<= x(с индексом i)<=5" относится у элементам массива Х. И, четвертое, массивы должны иметь разные индексы. В общем программа будет такой.
var
X, Y : array [1..20] of Integer; {оба массива одинакового размера, т. к. не знаем сколько положительных элементов}
j,k : Integer; {индексы массивов}
begin
Randomize;
for j := 1 to 20 do x[j] := Random(16) - 10; {заполнение массива Х числами в диапазоне [-10;5]}
k := 0; {индекс элементов массива Y}
for j := 1 to 20 do
if x[j] > 0) then begin
k := k +1;
y[k] := x[j];
end;
for j := 1 to k do Write(y[j]:3);
ReadLn;
end.
Удачи!
Немного не так, Wolf. Вы переписываете в массив Y числа из диапазона (-10 <= x[ i]) and (x[ i] >= 5), а по условию требуется переписать "положительные элементы X". Далее, массив объявлен как x:array [1..20] of integer;, а в цикле вы обращаетесь к нулевому элементу - ошибка выполнения обеспечена. Третье, "Условие: -10<= x(с индексом i)<=5" относится у элементам массива Х. И, четвертое, массивы должны иметь разные индексы. В общем программа будет такой.
var
X, Y : array [1..20] of Integer; {оба массива одинакового размера, т. к. не знаем сколько положительных элементов}
j,k : Integer; {индексы массивов}
begin
Randomize;
for j := 1 to 20 do x[j] := Random(16) - 10; {заполнение массива Х числами в диапазоне [-10;5]}
k := 0; {индекс элементов массива Y}
for j := 1 to 20 do
if x[j] > 0) then begin
k := k +1;
y[k] := x[j];
end;
for j := 1 to k do Write(y[j]:3);
ReadLn;
end.
Удачи!
Условие че то не совсем точное )))
Держи:
program L2;
var
x:array [1..20] of integer;
y:array [1..20] of integer;
i: Integer;
begin
Randomize;
for I := 0 to 20 do
begin
x[ i] := Random(-20);
if (-10 <= x[ i]) and (x[ i] >= 5) then
begin
y[ i] := x[ i];
write(y[ i],' ');
end;
end;
end.
program L2;
var
x:array [1..20] of integer;
y:array [1..20] of integer;
i: Integer;
begin
Randomize;
for I := 0 to 20 do
begin
x[ i] := Random(-20);
if (-10 <= x[ i]) and (x[ i] >= 5) then
begin
y[ i] := x[ i];
write(y[ i],' ');
end;
end;
end.
Похожие вопросы
- Pycharm (Пожалуйста, помогите с написанием программы)
- Помогите в написании программы.
- помогите с написанием программ на паскале
- Помогите с написанием программы C++
- Помогите с написанием программы на языке Ассемблер, алгоритм знаю, вот только команды самого языка - не очень.
- Помогите с написанием программы
- Помогите в написании программы на С++
- Помогите в написании программы на языке с++
- Помогите в написании программы на языке С++
- Пожалуйста помогите в написании программы на С++