Технический форум

Технический форум (http://www.tehnari.ru/)
-   Форум программистов (http://www.tehnari.ru/f22/)
-   -   Необходима помощь в доработке (http://www.tehnari.ru/f22/t25439/)

kill4itski 16.06.2009 10:43

Необходима помощь в доработке
 
Задача: Дан одномерный массив L[10], элементы которого вводятся с клавиатуры. В данном массиве значение каждого элеиента, имеющего чётный порядковый номер, возвести в квадрат. На экран вывести исходный и изменённый массив.

Вот, что я смог сделать:
Program massiv
Const N=10;
var i:integer;
X:array[1..n] of real;
L:array[1..n] of real;
begin
for i:=1 to n do
begin
writeln('vvedite znacenie',i,'-go elementa');
read(L[i]);
begin
if (i mod 2<>1) then x[i]:=sqr(L[i]) else x[i]:=L[i];
writeln('X[',I,']=',X[i]:6:2);
end;
end;
end.

Мне нужно ещё, чтобы выводился исходный массив, ведь тут выводится только изменённый. Пару варинантов пробовал - не получилось. Я в паскале совсем начинающий и программу делал не сам, хотя дорабатывал её именно я. Но не до конца. Помогите, пожалуйста

ww01031977 16.06.2009 12:40

Можно даже поблагодарить.
Program massiv;
uses crt;
Const N=10;
var i:integer;
X:array[1..n] of real;
L:array[1..n] of real;
begin
clrscr;
for i:=1 to n do
begin
write('L[',i,']='); readln(L[i]);
end;
for i:=1 to n do
if i mod 2=0 then x[i]:=sqr(L[i]) else x[i]:=L[i];
writeln(' masiv L');
for i:=1 to n do
write(L[i]:6:2);
writeln; writeln(' masiv X');
for i:=1 to n do
write(X[i]:6:2); writeln;
end.

Vladimir_S 16.06.2009 12:55

Цитата:

Сообщение от kill4itski (Сообщение 212462)
Задача: Дан одномерный массив L[10], элементы которого вводятся с клавиатуры. В данном массиве значение каждого элеиента, имеющего чётный порядковый номер, возвести в квадрат. На экран вывести исходный и изменённый массив.

Вот, что я смог сделать:
Program massiv
Const N=10;
var i:integer;
X:array[1..n] of real;
L:array[1..n] of real;
begin
for i:=1 to n do
begin
writeln('vvedite znacenie',i,'-go elementa');
read(L[i]);
begin
if (i mod 2<>1) then x[i]:=sqr(L[i]) else x[i]:=L[i];
writeln('X[',I,']=',X[i]:6:2);
end;
end;
end.

Мне нужно ещё, чтобы выводился исходный массив, ведь тут выводится только изменённый. Пару варинантов пробовал - не получилось. Я в паскале совсем начинающий и программу делал не сам, хотя дорабатывал её именно я. Но не до конца. Помогите, пожалуйста

Например, так:

Program massiv;
Const N=10;
var i:integer;
X:array[1..n] of real;
L:array[1..n] of real;
begin
for i:=1 to n do
begin
Write('vvedite znacenie',i,'-go elementa ');
readLn(L[i]);
end;
for i:=1 to n do

if (i mod 2<>1) then x[i]:=sqr(L[i]) else x[i]:=L[i];
WriteLn('Array L:');
for i:=1 to n do
Write(L[i]:7:2);
WriteLn;
WriteLn('Array X:');
for i:=1 to n do
Write(X[i]:7:2);
WriteLn;
ReadLn;

end.

Vladimir_S 16.06.2009 14:04

Забавно. Обе программы, моя и ww01031977, практически идентичны. Ну надо же!

ww01031977 16.06.2009 19:40

Цитата:

Сообщение от Vladimir_S (Сообщение 212526)
Забавно. Обе программы, моя и ww01031977, практически идентичны. Ну надо же!

Она очень проста. Школьный курс. По-другому и нет смысла делать.

kill4itski 20.06.2009 10:41

Большое спасибо!


Часовой пояс GMT +4, время: 06:33.

Powered by vBulletin® Version 4.5.3
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.