Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Образовательный студенческий форум _ Информатика / Программирование _ Даны 2 массива чисел

Автор: aizek 3.4.2011, 9:19

Даны 2 массива чисел Х =(х1,х2,...,хn) и Y=(y1,y2,...yn). Найти массив Z, у которого каждый элемент zi равен xi*yi.
на Паскале
Program Prim_43;
Const M = 100;
Var I,N: Integer
X,Y,Z: Array [1.. M] of Integer;
Begin
Read (N);
For I:=1 To N Do
Read (X[I],Y[I]);
Writeln (X[I],Y[I]);
For I:=1 To N Do
Z[i]:= X[i]*Y[i];
Writeln ('Z = ', Z[i]);
End.
Скажите правильно ли я решила? Проверить негде (

Автор: kaa 3.4.2011, 13:57

1)Нет проверки, что 0<N<=M.
2)Забыли после VAR I,N:Integer.
3)В цикле BEGIN и END забыли .
4)http://www.onlinecompiler.net/pascal.html есть очень удобный онлайн компилятор)).

--------------------------
у меня так получилось

Program Prim_43;
Const M = 100;
Var I,N: Integer;
X,Y,Z: Array [1.. M] of Integer;
Begin
I:=0;
write('Введите кол-во эл-тов массивов: ');
Readln (N);
writeln('введите массив X');
For I:=1 To N Do
begin
write('X[',I,']: ');
Readln (X[I]);
end;
writeln('введите массив Y');
For I:=1 To N Do
begin
write('Y[',I,']: ');
Readln (Y[I]);
end;
Write ('Z = ');
For I:=1 To N-1 Do
begin
Z[I]:= X[I]*Y[I];
Write (Z[I],', ');
end;
I:=I+1;
Z[I]:= X[I]*Y[I];
Write (Z[I]);
Readln;
end.

Автор: aizek 3.4.2011, 15:32

Цитата(kaa @ 3.4.2011, 17:57) *

1)Нет проверки, что 0<N<=M.
2)Забыли после VAR I,N:Integer.
3)В цикле BEGIN и END забыли .
4)http://www.onlinecompiler.net/pascal.html есть очень удобный онлайн компилятор)).

--------------------------
у меня так получилось

Program Prim_43;
Const M = 100;
Var I,N: Integer;
X,Y,Z: Array [1.. M] of Integer;
Begin
I:=0;
write('Введите кол-во эл-тов массивов: ');
Readln (N);
writeln('введите массив X');
For I:=1 To N Do
begin
write('X[',I,']: ');
Readln (X[I]);
end;
writeln('введите массив Y');
For I:=1 To N Do
begin
write('Y[',I,']: ');
Readln (Y[I]);
end;
Write ('Z = ');
For I:=1 To N-1 Do
begin
Z[I]:= X[I]*Y[I];
Write (Z[I],', ');
end;
I:=I+1;
Z[I]:= X[I]*Y[I];
Write (Z[I]);
Readln;
end.

А на Бэйсике? Уменя так
10 Input N
20 Dim X(N),Y(N),Z(N)
30 For I=1to N
40 Input X(I),Y(I)
50 Print X(I),Y(I)
60 Next I
70 For I=1 to N
80 Z(i)=X(I)*Y(I)
90 Print ("Z=";Z(I))
100 End.

Русская версия Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)