Понедельник, 25 Ноября 2024, 11:42

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
Помогите с массивами
Assassin5Дата: Понедельник, 18 Октября 2010, 19:32 | Сообщение # 1
частый гость
Сейчас нет на сайте
Вот задача:

Quote
Заполнить массив значениями согласно варианту.
(23, 5678, 2, 564, 365, 77,443)
Результат в виде таблицы значений массива вывести на консоль.
Реализовать перемножение двух матриц 2х2 на основании данных варианта задания.
■(1&1@1&4); ■(1&2@4&1)
Результат в виде таблицы значений элементов результирующей матрицы вывести на консоль.

Нужно сделать на Си. Есть мой вариант программы, не работает, выдает ошибку. В массивах не понимаю. Подскажите, как их можно вводить, выводить, перермножать.

Code
#include <stdio.h>

void main()
{
  int arr1[7]={23, 5678, 2, 564, 365, 77,443};
  int tab1[2][2] = {1,1,1,4};
  int tab2[2][2] = {1,2,4,1};
  int result[2][2];

  printf("Array's elements: %d, %d, %d, %d, %d, %d, %d \n", arr1[0], arr1[1], arr1[2], arr1[3], arr1[4], arr1[5], arr1[6]);
   
  result[2][2] = tab1[2][2]*tab2[2][2];
  printf("Result array is ", result);
}

Код ламерский, не ругайте сильно ))


http://vkontakte.ru/id84076405
ezhickovichДата: Понедельник, 18 Октября 2010, 19:39 | Сообщение # 2
[Великий и могучий хозяинъ]
Сейчас нет на сайте
Quote (Assassin5)
result[2][2] = tab1[2][2]*tab2[2][2];

В этой строчке ты присваиваешь ячейке [2][2] в массиве result произведение значений ячеек [2][2] в массивах tab1 и tab2

Quote (Assassin5)
printf("Result array is ", result);

Неправильно выводишь массив...
Это очевидно...



Я: О великий повелитель этой ничтожной вселенной - сокращённо ЁЖ!
Assassin5Дата: Понедельник, 18 Октября 2010, 19:43 | Сообщение # 3
частый гость
Сейчас нет на сайте
Quote (ezhickovich)
В этой строчке ты присваиваешь ячейке [2][2] в массиве result произведение значений ячеек [2][2] в массивах tab1 и tab2

А как создать массив, чьи значения будут результатом перемножения двух матриц?

Quote (ezhickovich)
Неправильно выводишь массив...

Спасибо, КЭП )). Я знаю, что неправильно. Я не умею. Это я просто так написал, знал что не будет работать.


http://vkontakte.ru/id84076405
ezhickovichДата: Понедельник, 18 Октября 2010, 20:01 | Сообщение # 4
[Великий и могучий хозяинъ]
Сейчас нет на сайте
Quote (Assassin5)
А как создать массив, чьи значения будут результатом перемножения двух матриц?

Нельзя просто перемножить массивы...
Массив это просто набор элементов...

Quote (Assassin5)
Это я просто так написал, знал что не будет работать.

Можешь вывести циклом или использовать форматированный вывод...

Добавлено (18.10.2010, 20:01)
---------------------------------------------

Quote (Assassin5)
Спасибо, КЭП ))

Очевидное где-то рядом...



Я: О великий повелитель этой ничтожной вселенной - сокращённо ЁЖ!
Assassin5Дата: Понедельник, 18 Октября 2010, 20:05 | Сообщение # 5
частый гость
Сейчас нет на сайте
спс, я попробую

http://vkontakte.ru/id84076405
karuyДата: Вторник, 19 Октября 2010, 12:30 | Сообщение # 6
заслуженный участник
Сейчас нет на сайте
Должно быть что-то вроде етого:
Result[1][1]=tab1[1][1]*tab2[1][1]+tab1[1][2]*tab2[2][1];
Result[1][2]=tab1[1][1]*tab2[1][2]+tab1[1][2]*tab2[2][2];
Result[2][1]=tab1[2][1]*tab2[1][1]+tab1[2][2]*tab2[2][1];
Result[2][2]=tab1[2][1]*tab2[2][1]+tab1[2][2]*tab2[2][2];
виводиш просто каждый елемент по очереди, обично матрицу выводят вложеным цыклом, но поскольку матрица у тебя миниатюрна выводить можно и в ручную.
  • Страница 1 из 1
  • 1
Поиск:

Все права сохранены. GcUp.ru © 2008-2024 Рейтинг