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

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

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

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

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

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 25.05.2009, 15:28   #1
DarthaBaudh
 
Регистрация: 25.05.2009
Сообщений: 8
По умолчанию помогите с матрицей

надо вывести матрицу на экран. Вот собственно наваял что то... Почему не выводит матрицу, а просто массив? кто может, обьясните в чем ошибка и помогите доделать. Заранее благодарен

Код:
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
main()
{
 int a[5][5],i,j;
 for(i=0;i<4;i++)
 for(j=0;j<4;j++)
 {a[i][j]=random(51)-25;
 printf("%4d",a[i][j];}
 getch();
 return 0;
}
Модератор: тег CODE

Последний раз редактировалось Sazary; 25.05.2009 в 15:31.
DarthaBaudh вне форума
Старый 25.05.2009, 15:31   #2
Sazary
В тени
Старожил
 
Аватар для Sazary
 
Регистрация: 19.12.2008
Сообщений: 5,788
По умолчанию

Все верно. Просто нужно еще добавить перевод строки на каждой итерации внешнего цикла:
Код:
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
int main()
{
int a[5][5],i,j;
for(i=0;i<4;i++)
 {
  for(j=0;j<4;j++)
  {
   a[i][j]=random(51)-25;
   printf("%4d",a[i][j]);
  }
 printf("\n");
 }
getch();
return 0;
}
Вполне очевидно, чтобы что-то понять, необходимо книги читать.
Не нужно плодить бессмысленных тем. Вас Поиск избавит от многих проблем.

___________________________________ ___________________________________ _______
[=Правила форума=]_____[Поиск]_____[Литература по С++]____[Литература. Паскаль]
Sazary вне форума
Старый 25.05.2009, 15:32   #3
DarthaBaudh
 
Регистрация: 25.05.2009
Сообщений: 8
По умолчанию

огромное спасибо программирую сравнительно недавно, вот и ошибку понять не смог) еще раз спасибо.
DarthaBaudh вне форума
Старый 25.05.2009, 15:55   #4
DarthaBaudh
 
Регистрация: 25.05.2009
Сообщений: 8
По умолчанию

Sazary, можно еще вам вот такой вопрос задать: как можно реализовать так, чтобы в матрице числа не повторялись, допустим 0 3 5 4
6 8 1 12
7 11 9 2
15 13 10 14
(числа сгенерированы рандомно). Если не трудно помогите. Я так думаю, как то через оператор If...

Последний раз редактировалось DarthaBaudh; 25.05.2009 в 15:59.
DarthaBaudh вне форума
Старый 25.05.2009, 16:00   #5
Sazary
В тени
Старожил
 
Аватар для Sazary
 
Регистрация: 19.12.2008
Сообщений: 5,788
По умолчанию

Цитата:
Сообщение от DarthaBaudh
как можно реализовать так, чтобы в массиве числа не повторялись
Помещайте сгенерированные числа в массив. И при генерации следующего числа пробегайтесь по массиву в поисках совпадения. Если совпало, то генерим число заново.
Вполне очевидно, чтобы что-то понять, необходимо книги читать.
Не нужно плодить бессмысленных тем. Вас Поиск избавит от многих проблем.

___________________________________ ___________________________________ _______
[=Правила форума=]_____[Поиск]_____[Литература по С++]____[Литература. Паскаль]
Sazary вне форума
Старый 25.05.2009, 16:41   #6
DarthaBaudh
 
Регистрация: 25.05.2009
Сообщений: 8
По умолчанию

пробежаться по массиву в поисках совпадения...
то есть while(a[i]==a[j])
{и дальше рандом снова}
как записать условие понять не могу
DarthaBaudh вне форума
Старый 25.05.2009, 16:47   #7
Sazary
В тени
Старожил
 
Аватар для Sazary
 
Регистрация: 19.12.2008
Сообщений: 5,788
По умолчанию

Цитата:
пробежаться по массиву в поисках совпадения...
то есть while(a[i]==a[j])
Нет.
Вот так как-нибудь:
Код:
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
#include <time.h>

int main()
{
srand(time(NULL));
int a[5][5],i,j;
int mas[100],m=0,flag,k;

for(i=0;i<4;i++)
 {
  for(j=0;j<4;j++)
  {
   do
    {
    flag=1;
    a[i][j]=rand()%51-25;
    for(k=0; k<m; k++)
     if(a[i][j]==mas[k]) flag=0;
    } while(flag==0);
   mas[++m] = a[i][j];
   printf("%4d",a[i][j]);
  }
 printf("\n");
 }

getch();
return 0;
}
Вполне очевидно, чтобы что-то понять, необходимо книги читать.
Не нужно плодить бессмысленных тем. Вас Поиск избавит от многих проблем.

___________________________________ ___________________________________ _______
[=Правила форума=]_____[Поиск]_____[Литература по С++]____[Литература. Паскаль]
Sazary вне форума
Старый 25.05.2009, 16:52   #8
DarthaBaudh
 
Регистрация: 25.05.2009
Сообщений: 8
По умолчанию

Sazary, огромное спасибо за помощь
DarthaBaudh вне форума
Закрытая тема


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
помогите с матрицей Victory1 Помощь студентам 2 13.05.2009 21:17
Помогите с матрицей Panda Помощь студентам 1 06.07.2008 16:42
помогите с матрицей Panda Помощь студентам 1 01.07.2008 11:31
Помогите с матрицей Zolotce Помощь студентам 4 21.04.2008 14:15