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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 17.01.2013, 21:01   #1
DEMIGOD124
 
Регистрация: 17.01.2013
Сообщений: 4
По умолчанию Матрица на Си

всем бобра) помогите подправить код:
Код:
#include <stdio.h>
#include <stdlib.h>
#include <malloc.h>
#include <math.h>
#include <string.h>
#include <conio.h>
#include <ctype.h>
#define N 20

int main(int argc, char *argv[])
{                                         // ne trogat do! etoi skobki
int m,n,i=0,j=0;                          // inichializacia (dobavit svoe)
printf ("Vvedite m: ");scanf ("%d", &m); // vvodim kolichestvo strok!
printf ("Vvedite n: ");scanf ("%d", &n); // stolbsov

int** arr = (int**) malloc(m*sizeof(int)); // formiruet kolichestvo strok!  ne stoit trogat
for(i = 0; i < m; ++i)                       // rabota s kolichestvom strok (M) 

arr[i] = (int*) malloc(n*sizeof(int));     // formiruet kolichestvo stolbsov!  ne stoit trogat
for (i=0;i<m;i++)                         // rabota s kolichestvom stolbsov (N) 
{
printf("\n");

for (j=0;j<n;j++)                          // cikl raboti s matrisey
{
arr[i][j]=rand()%10;                      // formiruem znachenia matrici (tut do 10)
printf("[%d][%d]--%d\t",i,j,arr[i][j]);    // vivod matrisi 
}

}                                         //ne trogat posle! etoi skobki
printf("\n\n");
system("PAUSE");
return EXIT_SUCCESS;
}
Нужно:
1) (done) чтобы матрица состояла из чисел с целой частью и дробной. 3 знака после запятой норм. тут наверное потребуется изменить тип данных...
2) исходя из этого когда: Найти и распечатать произведение каждой строки.
с условием (которое находится в прикреплённом изображении) буду рад любой помощи по теме. интересует хотябы тот момент куда следует добавить код для решения задачи и с чего начать...
Изображения
Тип файла: jpg 23112.jpg (5.8 Кб, 64 просмотров)

Последний раз редактировалось DEMIGOD124; 17.01.2013 в 22:03. Причина: уточнил
DEMIGOD124 вне форума Ответить с цитированием
Старый 17.01.2013, 22:02   #2
DEMIGOD124
 
Регистрация: 17.01.2013
Сообщений: 4
По умолчанию

c 1м разобрался. замена интеджер на даубл и чтобы выводил числа для массива в %lf
изменённый код:
Код:
#include <stdio.h>
#include <stdlib.h>
#include <malloc.h>
#include <math.h>
#include <string.h>
#include <conio.h>
#include <ctype.h>
#define N 20

int main(int argc, char *argv[])
{                                         // ne trogat do! etoi skobki
int m,n,i=0,j=0;                          // inichializacia (dobavit svoe)
printf ("Vvedite m: ");scanf ("%d", &m); // vvodim kolichestvo strok!
printf ("Vvedite n: ");scanf ("%d", &n); // stolbsov

double** arr = (double**) malloc(m*sizeof(double)); // formiruet kolichestvo strok!  ne stoit trogat
for(i = 0; i < m; ++i)                       // rabota s kolichestvom strok (M) 

arr[i] = (double*) malloc(n*sizeof(double));     // formiruet kolichestvo stolbsov!  ne stoit trogat
for (i=0;i<m;i++)                         // rabota s kolichestvom stolbsov (N) 
{
printf("\n");

for (j=0;j<n;j++)                          // cikl raboti s matrisey
{
arr[i][j]=rand()%10;                      // formiruem znachenia matrici (tut do 10)
printf("[%d][%d]--%3.2lf  ",i,j,arr[i][j]);    // vivod matrisi 
}

}                                         //ne trogat posle! etoi skobki
printf("\n\n");
system("PAUSE");
return EXIT_SUCCESS;
}
DEMIGOD124 вне форума Ответить с цитированием
Старый 18.01.2013, 00:38   #3
DEMIGOD124
 
Регистрация: 17.01.2013
Сообщений: 4
По умолчанию

Сам написал... сам ответил. тут осталось только для К написать чтобы с клавиатуры вводить.
Код:
#include <stdio.h>
#include <stdlib.h>
#include <malloc.h>
#include <math.h>
#include <string.h>
#include <conio.h>
#include <ctype.h>
#define N 20

int main(int argc, char *argv[])
{ // ne trogat do! etoi skobki
int m,n,i=0,j=0;
double temp=0.0;
double tan,ctan; // inichializacia (dobavit svoe)
printf ("Vvedite m: ");scanf ("%d", &m); // vvodim kolichestvo strok!
printf ("Vvedite n: ");scanf ("%d", &n); // stolbsov

double** arr = (double**) malloc(m*sizeof(double)); // formiruet kolichestvo strok! ne stoit trogat
for(i = 0; i < m; ++i) // rabota s kolichestvom strok (M)
arr[i] = (double*) malloc(n*sizeof(double)); // formiruet kolichestvo stolbsov! ne stoit trogat
for (i=0;i<m;i++) // rabota s kolichestvom stolbsov (N)
{
printf("\n");

for (j=0;j<n;j++) // cikl raboti s matrisey
{
if (i>j) arr[i][j]=tanh(i);
if (i==j) arr[i][j]=ctanh(i);
if (i<j) arr[i][j]=tanh(i);

printf("[%d][%d]--%3.2lf\t",i,j,arr[i][j]); // vivod matrisi
}

} //ne trogat posle! etoi skobki
printf("\n\n");

for (i=0;i<m;i++) // rabota s kolichestvom stolbsov (N)
{
for (j=0;j<n;j++) // cikl raboti s matrisey
{
if (i==2) temp+=arr[i][j];
}
}
printf("trololo=%3.2lf",temp);
system("PAUSE");
return EXIT_SUCCESS;
}
DEMIGOD124 вне форума Ответить с цитированием
Старый 19.01.2013, 13:17   #4
DEMIGOD124
 
Регистрация: 17.01.2013
Сообщений: 4
По умолчанию

2ва предыдущих коммента можно удалить. вот готовый код
Код:
#include <stdio.h>
#include <stdlib.h>
#include <malloc.h>
#include <math.h>
#include <string.h>
#include <conio.h>
#include <ctype.h>
#define N 20

int main(int argc, char *argv[])
{ 
int m,n,k,i=0,j=0;
double temp;
 
printf ("Vvedite m: ");scanf ("%d", &m); 
printf ("Vvedite n: ");scanf ("%d", &n); 

double** arr = (double**) malloc(m*sizeof(double)); 
for(i = 0; i < m; ++i) 
arr[i] = (double*) malloc(n*sizeof(double)); 
for (i=0;i<m;i++)
{
printf("\n");

for (j=0;j<n;j++) 
{
if (i>j) arr[i][j]=pow(i+j,2)*0.2;
if (i==j) arr[i][j]=1.51;
if (i<j) arr[i][j]=pow(i-j,2)*3.1;
printf("%lf\t",arr[i][j]);
}
} 
printf("\n\n");
printf ("Viberi k: ");scanf ("%d", &k);
for (i=0;i<m;i++) 
{
for (j=0;j<n;j++)
{
if (k==j) temp+=arr[i][j];

}
temp=temp/m;
}
printf("Sred.ar=%lf",temp);
printf("\n\n");
system("PAUSE");
return EXIT_SUCCESS;
}
DEMIGOD124 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Паскаль. Матрица NxN -> текстовый файл -> Матрица NxN - найти max по диагоналям -> типизированный файл Лунатик13 Помощь студентам 1 20.02.2012 15:54
матрица vidok_ Visual C++ 1 10.05.2011 19:50
Непонятки с DirectX (матрица поворота, камера, матрица проекции) ROD Общие вопросы C/C++ 2 17.09.2010 17:00
TurboPascal: граф, матрица смежности и матрица инцидентности. ulala Помощь студентам 0 02.12.2009 10:11
матрица shelest Помощь студентам 1 25.11.2009 21:35