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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 12.04.2012, 13:16   #1
Newb1e
 
Регистрация: 16.10.2011
Сообщений: 9
По умолчанию Нужна помoщь. Динамический массив.

Есть программа, которая определяет для многомерного массива
1. Произведение элементов в строках, которые не содержат отрицательных элементов
2. Максимум среди сумм диагоналей, параллельных главной


Нужно сделать тоже самое для динамического массива (в этой же программе). Помогите пожалуйста, код ниже

Код:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <time.h>

int main()
{
int a[100][100]; 
int n,i,j;
bool flag,fl=false;
int p, allp;

printf("Input n<100: ");
scanf("%d",&n);

srand(time(NULL));
for (i=0; i<n; i++)
{
for (j=0; j<n; j++)
{
a[i][j]=-2+rand()%10;
printf("%d ",a[i][j]);
}
printf("\n");
}

allp=1;
for (i=0; i<n; i++)
{
flag=true;
p=1;
for (j=0; j<n; j++)
{
p=p*a[i][j];
if (a[i][j]<0)
flag=false;
}
if (flag)
{
fl=true;
allp=allp*p;
printf(" proizvedenie v %d stroke = %d \n",i,p);
}
}
if (fl)
printf(" proizvedenie vo vseh takih strokah = %d \n",allp);
else
printf(" takih strok net \n");

scanf("%d",&n); 
return 1;
}
Newb1e вне форума Ответить с цитированием
Старый 12.04.2012, 13:56   #2
ZoRT
Пользователь
 
Регистрация: 20.01.2012
Сообщений: 16
По умолчанию

если на с++, то

Код:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <time.h>

int main()
{
    int n,i,j;
    bool flag,fl=false;
    int p, allp;

    printf("Input n<100: ");
    scanf("%d",&n);
    
    int** a = new int* [n];
    for(i = 0; i < n; i++)
    {
        a[i] = new int[n];
    }

    srand(time(NULL));
    for (i=0; i<n; i++)
    {
        for (j=0; j<n; j++)
        {
            a[i][j]=-2+rand()%10;
            printf("%d ",a[i][j]);
        }
        printf("\n");
    }

    allp=1;
    for (i=0; i<n; i++)
    {
        flag=true;
        p=1;
        for (j=0; j<n; j++)
        {
            p=p*a[i][j];
            if (a[i][j]<0)
            flag=false;
        }
        if (flag)
        {
            fl=true;
            allp=allp*p;
            printf(" proizvedenie v %d stroke = %d \n",i,p);
        }
    }
    if (fl)
        printf(" proizvedenie vo vseh takih strokah = %d \n",allp);
    else
        printf(" takih strok net \n");

    for (int i = 0; i < n; i++)
    {
        delete [] a[i];
    }
    delete [] a;

    scanf("%d",&n);
    return 1;
}
ZoRT вне форума Ответить с цитированием
Старый 12.04.2012, 20:48   #3
Newb1e
 
Регистрация: 16.10.2011
Сообщений: 9
По умолчанию

Мне надо что бы одновременно два массива были - динамический и многомерный
Newb1e вне форума Ответить с цитированием
Старый 12.04.2012, 21:28   #4
Newb1e
 
Регистрация: 16.10.2011
Сообщений: 9
По умолчанию

Все, разобрался, можно закрывать
Newb1e вне форума Ответить с цитированием
Старый 12.04.2012, 21:40   #5
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
и многомерный
Насколько много?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Динамический массив zhmen Помощь студентам 1 26.03.2012 03:36
Динамический массив, массив указателей alexalisa Паскаль, Turbo Pascal, PascalABC.NET 4 22.04.2011 21:33
Динамический массив - или всё таки не динамический? vedro-compota Общие вопросы C/C++ 30 10.12.2010 23:22
классы,конструктор копирования,динамический массив экземпляров.Нужна помощь bylynka Общие вопросы C/C++ 1 30.04.2009 21:56
Динамический массив _ares_ Паскаль, Turbo Pascal, PascalABC.NET 3 26.12.2007 23:54