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

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

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

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 09.11.2009, 23:37   #1
anksunamun
Пользователь
 
Регистрация: 16.10.2009
Сообщений: 12
По умолчанию Составить программу формирования массива из 15 элементов, в которой используется признак р

здравствуйте) сегодня задание такое:

составить программу формирования массива из 15 элементов, в которой используется признак р, в зависимости от которого реализовывался бы один из способов задания массива: при р<0 с помощью генератора случайных чисел, при р=0 с помощью формулы А[i]=2*i-7, при р>0 с клавиатуры. сделать вывод сформированного массива на экран. в полученном массиве все элементы, значения которых равны 0, заменить на их индекс; все отрицательные элементы заменить на модуль этих чисел; значения положительных элементов увеличит в 5 раз. вывести полученый массив. найти сумму элементов массива, стоящих на нечётных местах.

у меня вот такая вот запара:


Код:
PROGRAM massiv_1;
{Ksenija Saprikina 06.11.2009 domashnee zadanie}
var
p,i,n,b,s:integer;
A:array[1..15] of integer;
BEGIN
writeln('Vvedite priznak p');
readln(p);

if p<0 then
begin
   for i:=1 to 15 do
   A[i]:=random(10);
   end
   else;


begin
if (p=0) then

begin
   for i:=1 to 15 do 
   A[i]:=2*i-7;
            
   end
else;

begin                                                                            
if p<0 then
for i:=1 to 15 do
begin
writeln('Vvedite luboe celoe chislo');
readln(n);

A[i]:=n;
end;
end;

end;

writeln('Massiv A: ');
begin
for i:=1 to 15 do
writeln(A[i]);
end;

begin
for i:=1 to 15 do
   if A[i]=0 then 
   A[i]:=i
   else 
   if A[i]<0 then
   A[i]:=abs(A[i])
   else
   A[i]:=A[i]*5;
   end;
 
 
   



writeln('Izmenennij massiv A: ',A[i]);

s:=0;
i:=15;
begin
for b:=1 to i do
   if ((i mod b>0) or (i mod b<0)) then
   s:=s+i
   else;
end;
writeln('Summa nechetnih elementov = ',s);
END.
у меня программа запускается, но потом пишет "ошибка выполнения". я пыталась исправить, но никак не соображу, что надо сделать. уже мозги кипят, к тому же массивы не очень хорошо знаю))) помогите, пожалуйста))

Последний раз редактировалось Stilet; 10.11.2009 в 08:56.
anksunamun вне форума Ответить с цитированием
Старый 10.11.2009, 08:43   #2
ИринаForeve
Пользователь
 
Аватар для ИринаForeve
 
Регистрация: 27.04.2009
Сообщений: 48
По умолчанию

Сравни со своей программой, лень выделять изменения:
*****************
Код:
uses crt;
var p,i,s:integer;
 A:array[1..15] of integer;
BEGIN
 clrscr;
 write('Vvedite priznak p =');
 readln(p);
 if p<0 then
  for i:=1 to 15 do A[i]:=random(10);
 if p=0 then for i:=1 to 15 do A[i]:=2*i-7;
 if p>0 then
  for i:=1 to 15 do begin
 write('Vvedite chislo massiva a[',i,']=');
 readln(A[i]);
 end;
writeln('Massiv A: ');
 for i:=1 to 15 do write(A[i]:4);
writeln;
 for i:=1 to 15 do
begin
 if A[i]=0 then A[i]:=i
 else if A[i]<0 then A[i]:=abs(A[i])
 else if a[i]>0 then A[i]:=A[i]*5;
end;
writeln('zmeneni massiv:');
for i:=1 to 15 do write(A[i]:4);
writeln;
s:=0;
for i:=1 to 15 do
if (i mod 2)<>0 then s:=s+A[i];
write('Summa nechetnih elementov = ',s);
readkey;
END.
*******************
Проверила со всеми р вроде идет. Правильно?

Последний раз редактировалось Stilet; 10.11.2009 в 08:57.
ИринаForeve вне форума Ответить с цитированием
Старый 10.11.2009, 08:57   #3
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,792
По умолчанию

Девочки, а можно вас попросить код по кнопке # выделять?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 10.11.2009, 09:09   #4
ИринаForeve
Пользователь
 
Аватар для ИринаForeve
 
Регистрация: 27.04.2009
Сообщений: 48
По умолчанию

Хорошо буду выделять, извините Виталий не знала об этом)))
ИринаForeve вне форума Ответить с цитированием
Старый 10.11.2009, 20:56   #5
anksunamun
Пользователь
 
Регистрация: 16.10.2009
Сообщений: 12
По умолчанию

спасибо большое за программу)) поняла про код))
у меня примитивный вопрос, но какой есть:
что значит "uses crt", "clrscr" и "readkey"?
anksunamun вне форума Ответить с цитированием
Старый 11.11.2009, 06:55   #6
ИринаForeve
Пользователь
 
Аватар для ИринаForeve
 
Регистрация: 27.04.2009
Сообщений: 48
По умолчанию

uses crt - слово uses используется для подключения модулей, в данном случае crt - модуль,
clrscr - функция модуля - очистка экрана,
readkey - функция чтения нажатой клавиши, т.е. пока клавиша (любая) не нажата отображается результат программы
Может описание не точное, но смысл такой
ИринаForeve вне форума Ответить с цитированием
Старый 12.11.2009, 22:54   #7
anksunamun
Пользователь
 
Регистрация: 16.10.2009
Сообщений: 12
По умолчанию

спасибо большое!
anksunamun вне форума Ответить с цитированием
Старый 12.11.2009, 23:35   #8
ИринаForeve
Пользователь
 
Аватар для ИринаForeve
 
Регистрация: 27.04.2009
Сообщений: 48
По умолчанию

Да не за что))), главное что б на пользу.
А программу ты же сама написала, посто с недочетами, у всех бывает)))

Последний раз редактировалось ИринаForeve; 12.11.2009 в 23:37.
ИринаForeve вне форума Ответить с цитированием
Ответ


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

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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вывод элементов массива.Изменение элементов массива. Vesnushka18 Помощь студентам 6 09.06.2011 13:05
ассемблер: "Составить программу умножающую каждый элемент массива из 15 чисел на на 5. Naruto63 Помощь студентам 4 19.10.2009 13:37
составить программу подсчета числа элементов одномерного массива, превосходящих СРЕДНЕЕ ГЕОМЕТРИЧЕСКОЕ Fatality Помощь студентам 4 05.02.2009 07:53
написать программу на ДЕЛЬФИ(!), в которой используется MDI-окна (текстовые) Оксиморон Помощь студентам 4 28.01.2009 15:04
написать программу на дельфи, в которой используется MDI-окна (текстовые) Оксиморон Помощь студентам 11 14.01.2009 23:27