Форум программистов, компьютерный форум, киберфорум
Наши страницы
Pascal (Паскаль)
Войти
Регистрация
Восстановить пароль
 
 
Рейтинг 5.00/7: Рейтинг темы: голосов - 7, средняя оценка - 5.00
Ksenamorf
0 / 0 / 0
Регистрация: 28.11.2009
Сообщений: 16
1

Помогите сделать одномерный масив с матрицами

28.11.2009, 17:43. Просмотров 1305. Ответов 20
Метки нет (Все метки)

14. Заданы одновымерные масивы А, В из 10 чисел. Построить масив С, каждый елемент которого вычесляется

Код
    | 1/(ai-bi),  когда  ai<>bі 
 Сi={ 
    | 0       ,    когда  ai=bi
Но задание дали вот как сделать прогу так что бы самому написать количество матриц и оно геренрировало их с рандомными числами.
Вот моя лаба из двух матриц и рандомными числами. как сделать что бы вписать число матриц и оно их делало?

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
40
41
42
43
44
45
46
program lab
uses crt;
var
   a,b:array[1..10] of integer;
   c:array[1..10] of real;
   i,j:integer;
   ch:char;
const n=10;
begin
{ repeat          }
  clrscr;
  writeln('BBeguTb Matix A');
  for i:=1 to n do
    a[i]:=random(10)+1;
  writeln('BBeguTb Matrix B');
  for i:=1 TO n do
    b[i]:=random(10)+1;
 
  writeln('Matrix A');
  for i:=1 TO n do
   begin
    write(a[i]:5);
   end;
 
  writeln;
  writeln('Matrix B');
  for i:=1 TO n do
   begin
    write(b[i]:5);
   end;
  writeln;
  for i:=1 TO n do
   begin
    if a[i]<>b[i] then  c[i]:=1/a[i]-b[i]
                  else c[i]:=0;
   end;
  for i:=1 TO n do
   begin
    write(c[i]:7:2);
   end;
 
   writeln;
   writeln('if you want to repeat calculations press y');
   ch:=readkey;
 {until ch<>'y';}
 readln;
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.11.2009, 17:43
Ответы с готовыми решениями:

Одномерный масив
Дан массив размером N. Вычислить сумму элементов стоящих на четных местах....

Одномерный масив
В одномерном массиве вычислить количество чисел, которые кратны 5.

одномерный масив
Создать одномерный массив из 14 элементов. Вычислить максимальный элемент из...

Одномерный масив
Помогите пожалуйста! 1) Найти максимальный четный элемент в данном массиве...

осадки одномерный масив
пожалуйста помогите В массив введены результаты измерения среднего количества...

20
Snoopy
1912 / 1071 / 383
Регистрация: 06.12.2008
Сообщений: 2,802
28.11.2009, 17:45 2
Цитата Сообщение от Ksenamorf Посмотреть сообщение
Вот моя лаба из двух матриц и рандомными числами
это не ваша лаба, а чья-то....
а задание я вообще не понял, всмысле формулу, лучше нарисуй и выложи
0
Ksenamorf
0 / 0 / 0
Регистрация: 28.11.2009
Сообщений: 16
28.11.2009, 17:54  [ТС] 3
это моя лаба!
А просил я вот что : как приобразовать мою лабараторку так что бы при воде числа матриц оно столько и генерировало их.
Если впишу 3 то оно генерирует 3 матрицы с рандомными числами
если 26 то 26.
Поможете?
0
Ksenamorf
0 / 0 / 0
Регистрация: 28.11.2009
Сообщений: 16
28.11.2009, 17:56  [ТС] 4
Вот формула
0
Миниатюры
Помогите сделать одномерный масив с матрицами  
Snoopy
1912 / 1071 / 383
Регистрация: 06.12.2008
Сообщений: 2,802
28.11.2009, 18:45 5
так вам нужно вводить элементы массивов с клавиатуры...
0
Puporev
Модератор
54717 / 42123 / 29086
Регистрация: 18.05.2008
Сообщений: 99,430
28.11.2009, 18:48 6
Ksenamorf, А при чем тут матрицы?
0
Ksenamorf
0 / 0 / 0
Регистрация: 28.11.2009
Сообщений: 16
28.11.2009, 18:55  [ТС] 7
Это дополнительно из программы что я сделал с рандомными числами нужно ещё сделать так что бы при запуске программы вписать нужное число матриц,и что бы оно сгенерировало это число с рандомными числами
а матрицы тут требуются по заданию т.к. я ввожу матрицу А и Матрицу Б (точнее рандом чисел) и отсюда находится 3я матрица.
А Задание конечное написал выше

Добавлено через 1 минуту
тоесть если я напишу число 7 оно мне сгенерирует 7 разных матриц и по условию поотнимает числа и выведет мне Восьмую матрицу
0
Snoopy
1912 / 1071 / 383
Регистрация: 06.12.2008
Сообщений: 2,802
28.11.2009, 18:56 8
Цитата Сообщение от Ksenamorf Посмотреть сообщение
я ввожу матрицу А и Матрицу Б
у вас по заданию одномерные массивы, тем более вы сами в своей программе пишите цикл
Pascal
1
for i:=1 to n do
что значит вектор, т.е строка...
и вы еще говорите, что лаба ваша?
0
Ksenamorf
0 / 0 / 0
Регистрация: 28.11.2009
Сообщений: 16
28.11.2009, 18:59  [ТС] 9
Лаба моя могу выложить файл на мои задания
До меня просто не доходит сделать так ,как я сказал выше
0
Puporev
Модератор
54717 / 42123 / 29086
Регистрация: 18.05.2008
Сообщений: 99,430
28.11.2009, 19:08 10
Если бы все 3 массива были одного типа, можно было бы просто использовать трехмерный массив, но у нас 2 массива целого типа и один вещественного, поэтому я использовал тип запись.

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
uses crt;
type
mas1=array[1..10] of integer;
mas2=array[1..10] of real;
matr=record
     m1,m2:mas1;
     m3:mas2;
     end;
var a:array[1..20] of matr;
    n,i,j,k:integer;
begin
clrscr;
randomize;
write('Количество генераций n=');
readln(n);
for i:=1 to n do
 begin
  writeln('Генерация ',i);
  for j:=1 to 10 do
   begin
    a[i].m1[j]:=random(9)+1;
    a[i].m2[j]:=random(9)+1;
    if a[i].m1[j]=a[i].m2[j] then a[i].m3[j]:=0
    else  a[i].m3[j]:=1/(a[i].m1[j]-a[i].m2[j]);
   end;
  write('A=');
  for j:=1 to 10 do write(a[i].m1[j]:5);
  writeln;
  write('B=');
  for j:=1 to 10 do write(a[i].m2[j]:5);
  writeln;
  write('C=');
  for j:=1 to 10 do write(a[i].m3[j]:5:1);
  writeln;
  writeln;
 end;
readln
end.
0
Ksenamorf
0 / 0 / 0
Регистрация: 28.11.2009
Сообщений: 16
28.11.2009, 19:14  [ТС] 11
мм...чуток не то....у меня к примеру матрица А(1) матрица Б(2) нужно что бы было к примеру вместе матрица 1,2,3,4,......и так до того числа до которого я напишу,а не матрица а,б,ц с разными значениями
0
Puporev
Модератор
54717 / 42123 / 29086
Регистрация: 18.05.2008
Сообщений: 99,430
28.11.2009, 19:16 12
Ksenamorf, Ты понятия не имеешь, что такое матрица, и понятия не имеешь, что тебе задали. Ты же сам писал, есть 2 массива, сделать третий и так столько раз, сколько спросишь, это я тебе и написал.
0
Ksenamorf
0 / 0 / 0
Регистрация: 28.11.2009
Сообщений: 16
28.11.2009, 19:18  [ТС] 13
блин.... я сказал что 2 масива это было первое задание а мне нужно преобразовать.
попробую обьяснить, если мне скажут создай 23 матрицы и что бы я не копировал текст только меня названия. сделать что бы за меня это делала програмка,тоесть я вписал 23 и оно мне выдало 23 матрицы которые друг от друга отнимаются и выводится ответ 24й матрицей
0
Snoopy
1912 / 1071 / 383
Регистрация: 06.12.2008
Сообщений: 2,802
28.11.2009, 19:20 14
а файл который ты приложил, он для чего?
0
Ksenamorf
0 / 0 / 0
Регистрация: 28.11.2009
Сообщений: 16
28.11.2009, 19:22  [ТС] 15
Это пример моей программы которую нужно приобразить
0
Puporev
Модератор
54717 / 42123 / 29086
Регистрация: 18.05.2008
Сообщений: 99,430
28.11.2009, 19:24 16
Ksenamorf,
1. Если еще раз назовете линейный массив матрицей, приеду и убью.
2. Мы не можем создать матрицу из векторов разного типа, это я уже писал.
3. Как Вы будете получать результирующий массив скажем по четырем исходным массивам, если условие четко прописано для двух исходных массивов?
0
Ksenamorf
0 / 0 / 0
Регистрация: 28.11.2009
Сообщений: 16
28.11.2009, 19:28  [ТС] 17
ну нужно как то изменить,я вот сам не пойму как это сделать почему и обратился к вам.
мне препод подал пример что вот скажем тебе сказалитебе сделать 3 матрицы,а ты просто скопируешь текст и изменишь условие потом скажут а сделай 100матриц,то ты будешь копировать и изменять значения?
я вам описал моё задание как мне сказали...
0
Puporev
Модератор
54717 / 42123 / 29086
Регистрация: 18.05.2008
Сообщений: 99,430
28.11.2009, 19:35 18
Ksenamorf, Я уже почти еду. Тебе препод сказал написать эту программу процедурой с параметром, чтобы в программе задавать параметры и выводить массивы. При чем наверняка не обязательно по 10 элементов. Сейчас накатаю, с собой привезу.
0
Ksenamorf
0 / 0 / 0
Регистрация: 28.11.2009
Сообщений: 16
28.11.2009, 19:40  [ТС] 19
=))
ну я же не специально...я выразился как сам понял задание.
спасибо за терпение

Добавлено через 2 минуты
приезжайте рад буду познакомиться хоть 1 человек будет который нормально понимает програмирование
0
Puporev
Модератор
54717 / 42123 / 29086
Регистрация: 18.05.2008
Сообщений: 99,430
28.11.2009, 20:00 20
Я думаю с тебя требовали это.
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
40
41
42
43
44
45
46
47
program lab;
uses crt;
type
mas1=array[1..100] of integer;
mas2=array[1..100] of real;
procedure Generate(var v1,v2:mas1;x:byte; var v3:mas2);
var i:byte;
begin
for i:=1 to x do
 begin
  v1[i]:=random(9)+1;
  v2[i]:=random(9)+1;
  if v1[i]=v2[i] then v3[i]:=0
  else v3[i]:=1/(v1[i]-v2[i]);
 end;
end;
procedure Vyvod(var v1,v2:mas1;x:byte; var v3:mas2);
var i:byte;
begin
writeln('Massiv A');
for i:=1 to x do
write(v1[i]:5);
writeln;
writeln;
writeln('Massiv B');
for i:=1 to x do
write(v2[i]:5);
writeln;
writeln;
writeln('Massiv C');
for i:=1 to x do
write(v3[i]:5:1);
writeln;
writeln;
end;
var a,b:mas1;
    c:mas2;
    n,i:integer;
begin
clrscr;
randomize;
write('Razmer massivov n=');
readln(n);
Generate(a,b,n,c);
Vyvod(a,b,n,c);
readln
end.
Добавлено через 1 минуту
Если захочешь, что бы программа по требованию повторяла все, то нужно добавить цикл repeat и маленькое меню из двух пунктов.

Добавлено через 6 минут
Тогда будет так, меню можешь переделать.
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
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
program lab;
uses crt;
type
mas1=array[1..100] of integer;
mas2=array[1..100] of real;
procedure Generate(var v1,v2:mas1;var x:byte; var v3:mas2);
var i:byte;
begin
write('Razmer massivov=');
readln(x);
for i:=1 to x do
 begin
  v1[i]:=random(9)+1;
  v2[i]:=random(9)+1;
  if v1[i]=v2[i] then v3[i]:=0
  else v3[i]:=1/(v1[i]-v2[i]);
 end;
end;
procedure Vyvod(var v1,v2:mas1;x:byte; var v3:mas2);
var i:byte;
begin
writeln('Massiv A');
for i:=1 to x do
write(v1[i]:5);
writeln;
writeln;
writeln('Massiv B');
for i:=1 to x do
write(v2[i]:5);
writeln;
writeln;
writeln('Massiv C');
for i:=1 to x do
write(v3[i]:5:1);
writeln;
writeln;
readln;
end;
var a,b:mas1;
    c:mas2;
    n:byte;
    w:char;
begin
clrscr;
randomize;
repeat
clrscr;
writeln('Dejstvie 1-povtor, drugoe-vyhod');
readln(w);
case w of
'1':begin
    Generate(a,b,n,c);
    Vyvod(a,b,n,c);
    end;
else exit;
end;
until w<>'1';
end.
0
28.11.2009, 20:00
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
28.11.2009, 20:00

Дан масив А, сформировать одномерный.
Дан массив А (матрица) А (n*m). Сформировать одномерный массив из суммы каждого...

Одномерный масив паскаль (очень срочно)
В одномерном массиве с четным количеством элементов (2N) находятся координаты N...

Отсортировать одномерный масив методом вставок по убывания!
Мне нужно на завтра написать вот такой масив: Отсортировать элементы...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru