Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 24.03.2009, 19:41   #1
aiktz
Форумчанин
 
Регистрация: 10.03.2009
Сообщений: 104
Радость Работа с массивами (pascal)

1. Написать программу размещения элементов заданного вектора в обратном порядке (без использования дополнительного массива).
Код:
program dux;
uses crt;
const n=5;
var
i:integer;
c:real;
a:array [1..n] of real;
begin
clrscr;
for i:=1 to n do
begin
write('a[', i,']=');
readln(a[i]);
end;
for i:=1 to n do
c:=a[i];
a[i]:=a[n-i+1];
a[n-i+1]:=c;
write(a[i]:5:1);
readln(a[i]);
end.
2.Найти среднее арифметическое элементов заданного вектора, лежащих в заданном диапазоне.
Код:
program dux;
uses crt;
const n=5;
var
i:integer;
l,m,s,k:real;
a:array [1..n] of real;
begin
clrscr;
s:=0;
k:=0;
for i:=1 to n do
if l>=a[i] and a[i] <= m then
begin
S:=S+a[i];
k:=k+1;
end;
S:=S/k;
{вывод среднего арифметического}
writeln(s);
readln;
end.

Последний раз редактировалось rpy3uH; 24.03.2009 в 20:09.
aiktz вне форума Ответить с цитированием
Старый 24.03.2009, 19:53   #2
Sazary
В тени
Старожил
 
Аватар для Sazary
 
Регистрация: 19.12.2008
Сообщений: 5,788
По умолчанию

Первая:
Код:
program dux;
uses crt;
const n=5;
var
i:integer;
c:real;
a:array [1..n] of real;

begin
clrscr;
for i:=1 to n do
 begin
 write('a[', i,']=');
 readln(a[i]);
 end;
for i:=1 to (n div 2) do
 begin
 c:=a[i];
 a[i]:=a[n-i+1];
 a[n-i+1]:=c;
 end;
for i:=1 to n do
 write(a[i]:5:1);
readln;
end.
Во второй вы не вводите ни вектор, ни диапазон.

И код заключайте в тег CODE!
Вполне очевидно, чтобы что-то понять, необходимо книги читать.
Не нужно плодить бессмысленных тем. Вас Поиск избавит от многих проблем.

___________________________________ ___________________________________ _______
[=Правила форума=]_____[Поиск]_____[Литература по С++]____[Литература. Паскаль]
Sazary вне форума Ответить с цитированием
Старый 24.03.2009, 19:54   #3
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

в перестановке:
1) забыты begin .. end
2) надо менять местами только ПОЛОВИНУ элементов.
(положите на столе пять карточек и меняйте их по очередно.. сами всё поймёте )
3) при замене не получится сразу же и выводить массив.

т.о. замените кусок перестановки на:
Код:
for i:=1 to (n div 2) do
begin
  c:=a[i];
  a[i]:=a[n-i+1];
  a[n-i+1]:=c;
end;

for i:=1 to n do
  write(a[i]:5:1);
readln; {это просто для остановки программы.
 программа ждёт, пока мы нажмём Enter,
 чтобы мы насладились результатами, 
  выведенными на экран}
Serge_Bliznykov вне форума Ответить с цитированием
Старый 24.03.2009, 19:56   #4
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Sazary, хоть на минутку, а всё равно опередили меня
Обратите внимание на внесённые исправления! Буквально байт в байт! :-)
Serge_Bliznykov вне форума Ответить с цитированием
Старый 24.03.2009, 20:01   #5
Sazary
В тени
Старожил
 
Аватар для Sazary
 
Регистрация: 19.12.2008
Сообщений: 5,788
По умолчанию

Serge_Bliznykov,
Даже добавить нечего )
Вполне очевидно, чтобы что-то понять, необходимо книги читать.
Не нужно плодить бессмысленных тем. Вас Поиск избавит от многих проблем.

___________________________________ ___________________________________ _______
[=Правила форума=]_____[Поиск]_____[Литература по С++]____[Литература. Паскаль]
Sazary вне форума Ответить с цитированием
Старый 25.03.2009, 10:21   #6
aiktz
Форумчанин
 
Регистрация: 10.03.2009
Сообщений: 104
Радость

спасибо Вам огромное!!!!!

а как со вторым быть?

Последний раз редактировалось Stilet; 25.03.2009 в 16:02.
aiktz вне форума Ответить с цитированием
Старый 25.03.2009, 15:46   #7
Sazary
В тени
Старожил
 
Аватар для Sazary
 
Регистрация: 19.12.2008
Сообщений: 5,788
По умолчанию

Цитата:
Сообщение от aiktz
а как со вторым быть?
Сказал же! Вы не вводите ни вектор, ни диапазон. Работаете с пустотой.
Вполне очевидно, чтобы что-то понять, необходимо книги читать.
Не нужно плодить бессмысленных тем. Вас Поиск избавит от многих проблем.

___________________________________ ___________________________________ _______
[=Правила форума=]_____[Поиск]_____[Литература по С++]____[Литература. Паскаль]
Sazary вне форума Ответить с цитированием
Старый 25.03.2009, 15:49   #8
XuTpbIu
Злобстер
Форумчанин
 
Аватар для XuTpbIu
 
Регистрация: 19.03.2009
Сообщений: 134
По умолчанию

Просто сделайте внчале:
Код:
readln(l, m);
От знаний ещё никто не умирал, но рисковать не стоит.
XuTpbIu вне форума Ответить с цитированием
Старый 25.03.2009, 15:52   #9
Sazary
В тени
Старожил
 
Аватар для Sazary
 
Регистрация: 19.12.2008
Сообщений: 5,788
По умолчанию

Цитата:
Сообщение от XuTpbIu Посмотреть сообщение
Просто сделайте внчале:
Код:
readln(l, m);
А массив, по-вашему, сам заполнится?
Вполне очевидно, чтобы что-то понять, необходимо книги читать.
Не нужно плодить бессмысленных тем. Вас Поиск избавит от многих проблем.

___________________________________ ___________________________________ _______
[=Правила форума=]_____[Поиск]_____[Литература по С++]____[Литература. Паскаль]
Sazary вне форума Ответить с цитированием
Старый 25.03.2009, 16:00   #10
XuTpbIu
Злобстер
Форумчанин
 
Аватар для XuTpbIu
 
Регистрация: 19.03.2009
Сообщений: 134
По умолчанию

Эхх... конец рабочего дня
значит вначале надо:
Код:
randomize;
readln(l, m);
for I := 1 to N do
  a[I] := random(9);// к примеру
От знаний ещё никто не умирал, но рисковать не стоит.
XuTpbIu вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
работа с массивами и файлами (Pascal) pakusya Помощь студентам 8 28.06.2012 10:08
Работа с массивами (pascal) Стасссс Помощь студентам 7 19.03.2009 16:16
Работа с массивами (pascal) Bykvaeshka Помощь студентам 3 17.03.2009 18:24
Работа с массивами (pascal) dashenka Помощь студентам 21 14.03.2009 13:19
Работа с массивами на pascal Mihael-Vlz Паскаль, Turbo Pascal, PascalABC.NET 2 18.12.2008 16:30