0 / 0 / 0
Регистрация: 25.11.2017
Сообщений: 3
1

Создать и заполнить 2 одномерных массива

25.11.2017, 13:15. Показов 484. Ответов 5
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Задание звучало так: создайте и заполните 2 одномерных массива если пары массивов отрицательные перемножьте их и запишите в 3 массив.

Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
program mrx;
type
 tmas = array [1..10] of real;
var
 i,j,k:byte;
 m1,m2,m3:tmas;
 a,b,s:real;
begin
 writeln('Vvedite 1 mas');
 for i:= 1 to 10 do
  begin
    read(a);
    readln;
    m1[i]:= a;
  end;
 writeln('Vvedite 2 mas');
 for j:= 1 to 10 do
  begin
    read(b);
    readln;
    m2[j]:=b;
  end;
 i:=0;
 j:=0;
 k:=0;
 repeat
  if (m1[i]<0)and(m2[j]<0) then
   begin
    s:=m1[i] * m2[j];
   m3[k]:=s;
   end;
  i:=i+1;
  j:=j+1;
  k:=k + 1;
 until k < 10;
 write(mas[k]);
 writeln;
end.
Выдает ошибку там где проверка: индекс находиться вне границ массива
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
25.11.2017, 13:15
Ответы с готовыми решениями:

Заполнить два одномерных массива...
Заполнить два одномерных массива x1, x2…xn и y1, y2…ym(n=40, m=10) случайными целыми числами в...

Объявить указатели на три одномерных массива целого типа по 10 элементов каждый. Заполнить два из них числами в диапазон
Объявить указатели на три одномерных массива целого типа по 10 элементов каждый. Заполнить два из...

Заполнить 3 различных одномерных массива такими способами
Помогите пожалуйста написать программу: Заполнить 3 различных одномерных массива такими способами:...

Даны 2 упорядоченных одномерных массива. создать 3 одномерный массив, содержащий упорядоченные элементы 1 и 2 массива.
Даны 2 упорядоченных одномерных массива. создать 3 одномерный массив, содержащий упорядоченные...

5
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
32816 / 21154 / 8147
Регистрация: 22.10.2011
Сообщений: 36,413
Записей в блоге: 8
25.11.2017, 13:18 2
Правильно выдает. В 3-ей строке написано, что массив имеет индексы от 1 до 10, а в 27-ой есть попытка обратиться по индексу i, который равен 0 (в 23 строке присвоение). С j - та же проблема. Так что либо изменяй в 3-ей строке диапазон индексов, либо в 23-25-ой строках изменяй начальное значение переменных. Лучше второй вариант. Потому что заполняется как раз массив правильно, с индексами от 1 до 10...
0
0 / 0 / 0
Регистрация: 25.11.2017
Сообщений: 3
25.11.2017, 13:44  [ТС] 3
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
program mrx;
type
 tmas = array [1..10] of real;
var
 i,j,k,l:byte;
 m1,m2,m3:tmas;
 a,b,s:real;
begin
 writeln('Vvedite 1 mas');
 for i:= 1 to 10 do
  begin
    read(a);
    readln;
    m1[i]:= a;
  end;
 writeln('Vvedite 2 mas');
 for j:= 1 to 10 do
  begin
    read(b);
    readln;
    m2[j]:=b;
  end;
 i:=1;
 j:=1;
 l:=1;
 repeat
  if (m1[i]<0)and(m2[j]<0) then
   begin
    s:= m1[i]*m2[j];
    m3[l]:=s;
    l:=l + 1;
   end;
    k:= k + 1;
    i:=i + 1;
    j:=j + 1;
    until k > 10;
    write('otvet = ',m3[l]);
    writeln;
end.

Выдает ошибку возле проверки: индекс находиться вне границ массива
0
Почетный модератор
64299 / 47594 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
25.11.2017, 14:09 4
Не очень понятно что Вы делаете, может это?
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
const n=10;
var m1,m2,m3:array[1..n] of real;
    i,j,l:byte;
begin
writeln('Vvedite 1 mas');
for i:=1 to n do
readln(m1[i]);
writeln('Vvedite 2 mas');
for i:=1 to n do
readln(m2[i]);
l:=0;
for i:=1 to n do
if (m1[i]<0)and(m2[i]<0) then
 begin
  l:=l+1;
  m3[l]:=m1[i]*m2[i];
 end;
if l=0 then write('Нет отрицательных элементов на одинаковых позициях в массивах m1 и m2')
else
 begin
  writeln('otvet');
  for i:=1 to l do
  write(m3[i],' ');
 end;
end.
0
0 / 0 / 0
Регистрация: 25.11.2017
Сообщений: 3
25.11.2017, 20:52  [ТС] 5
Задание звучало так: задано два массива если их пары отрицательные перемножить их и записать в 3 массив. Не могу разобраться как сделать правильно
0
Эксперт Pascal/Delphi
6809 / 4566 / 4819
Регистрация: 05.06.2014
Сообщений: 22,438
25.11.2017, 20:54 6
Shulleer, Puporev вам ответил уже.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
25.11.2017, 20:54
Помогаю со студенческими работами здесь

Дано два одномерных массива, создать третий массив который содержит элементы первого массива
Дано два одномерных массива, создать третий массив который содержит элементы первого массива, но...

Создать массив, заполнить случайными числами четные элементы массива, а нечетные заполнить квадратом их индекса
На паре задали сделать работу,но ничего не объяснили,а я до этого с массивами не работал,если кому...

Создать 3 одномерных массива одинаковой размерности
1. Создать 3 одномерных массива одинаковой размерности. а) I массив заполнить случайными числами в...

Создать два одномерных массива по 10 целочисленных значений
Задача 1. Пользовательские формы Вычисление площади прямоугольного треугольника по двум катетам....


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru