Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Sear
WebDeveloper
88 / 88 / 0
Регистрация: 02.02.2011
Сообщений: 1,766
#1

вещественная матрица - C++

28.09.2011, 09:41. Просмотров 704. Ответов 4
Метки нет (Все метки)

нужна помощь с решением двух задач не как не получается их решить, на язык С

1)Задана вещественная матрица размером N×M. Определить сумму максимальных элементов всех столбцов матрицы.
2)Написать программу ввода информации по студенту (Ф.И.О.,группа,факультет,курс).

фамилия, имя, отчество (строки по 15 символов);
курс (целое число от 1 до 5);
средний балл (вещественное число от 1 до 10).



буду очень благодарен за помощь
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.09.2011, 09:41
Здравствуйте! Я подобрал для вас темы с ответами на вопрос вещественная матрица (C++):

Вещественная матрица - C++
Помогите реализовать Вещественную матрицу и след. ее пункты. при помощи UnitTest's: Описать класс, реализующий тип данных...

Класс «вещественная матрица» - C++
Описать класс, реализующий тип данных «вещественная матрица» и работу с ними. Класс должен реализовывать следующие операции над...

вещественная прямоугольная матрица - C++
Прошу помочь с лабораторной работой Матрицы:) Дана вещественная прямоуголная матрица. Найти сумму элементов в строках с...

описать класс вещественная матрица - C++
задание описать класс вещественная матрицаи работу с ним. класс должен реализировать след.операций вычисление нормы. #include...

Создать класс «вещественная матрица» - C++
1. Создать класс «вещественная матрица». Реализовать методы: заполнение матрицы случайными числами от 0 до 1, вычисление транспонированной...

Класс «вещественная матрица» 2х2 - C++
Буду очень благодарен за помощь.

4
-=ЮрА=-
Заблокирован
Автор FAQ
28.09.2011, 10:24 #2
Sear, по 2-й части - посмотрите сюда структуры !!!, подправьте под свои нужды я уже устал переделывать из года в год повторяющиеся топики про БД со структурами...

Добавлено через 8 минут
Цитата Сообщение от Sear Посмотреть сообщение
1)Задана вещественная матрица размером N×M. Определить сумму максимальных элементов всех столбцов матрицы.
Вот на плюсах
C++
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
59
60
61
62
63
64
65
66
67
68
69
#include <iostream>//i/o
#include <cstdlib> //srand
#include <conio.h> //getch()
#include <time.h>  //time()
#include <math.h>
 
using namespace std;//У меня тарій компилятор так что
 
//Руссификация
ostream& operator<<(ostream &stream,char* s){
    for(char* ps=s; *ps; ps++){
        if(*ps=='ё')
            stream<<char(241);
        else if(*ps=='Ё')
            stream<<char(240);
        else if(*ps>=-64 && *ps<=-17)           
            stream<<char(*ps+64+128);
        else if(*ps<0)
            stream<<char(*ps+64+176);
        else
            stream<<*ps;
    }
    return stream;
}
//Поиск макс элемента в столбце
double MaxColVal(int m, int iCol, double **arr)
{
    double ret = arr[0][iCol];
    for(int i = 1; i < m; i++)
        if(ret < arr[i][iCol])
            ret = arr[i][iCol];
    return ret;
}
 
int main()
{
    unsigned long i,j,m,n;
    double ** arr, sum;
    do
    {
        srand(time(NULL));
        std::cout<<"Введите размерность массива\r\n";
        std::cout<<"Число строк    : ";
        std::cin>>m;
        std::cout<<"Число столбцов : ";
        std::cin>>n;
 
        sum = 0;//Обнуляем сумму макс элементов
        arr = new double *[m];
        for(i = 0; i < m; i++)
        {
            arr[i] = new double[n];
            for(j = 0; j < n; j++)
            {
                //Чтобы числа в массиве были не очень большими 
                //генерируем их в диапазоне 0 - 100
                std::cout<<(arr[i][j] = rand()%100)<<" ";
            }
            std::cout<<"\r\n";
        }
        for(j = 0; j < n; j++)
            sum += MaxColVal(m, j, arr);
        std::cout<<"Сумма макс элементов столбцов : ";
        std::cout<<sum<<"\r\n";
        std::cout<<"Y - новый ввод\r\n";
    }
    while(toupper(getch()) == 'Y');
    return 0;
}
Введите размерность массива
Число строк : 5
Число столбцов : 6
84 10 53 98 14 2
продолжение
97 11 91 24 90 59
89 22 17 9 20 33
46 12 71 72 17 29
13 54 65 3 10 95

Сумма макс элементов столбцов : 525
Y - новый ввод

Добавлено через 19 минут
Sear, это пойдёт в билдере
C
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
#include <stdio.h>//i/o
#include <stdlib.h> //srand
#include <conio.h> //getch()
#include <ctype.h> //toupper
#include <time.h>  //time()
 
//Поиск макс элемента в столбце
double MaxColVal(int m, int iCol, double **arr)
{
    double ret = arr[0][iCol];
    for(int i = 1; i < m; i++)
        if(ret < arr[i][iCol])
            ret = arr[i][iCol];
    return ret;
}
 
int main()
{
    unsigned long i,j,m,n;
    double ** arr, sum;
    do
    {
        srand(time(NULL));
        printf("Enter dimension of array\r\n");
        printf("Num of Rows    : ");scanf("%u",&m);
        printf("Num of Colums : ");scanf("%u",&n);
 
        sum = 0;//Обнуляем сумму макс элементов
        arr = new double *[m];
        for(i = 0; i < m; i++)
        {
            arr[i] = new double[n];
            for(j = 0; j < n; j++)
            {
                //Чтобы числа в массиве были не очень большими 
                //генерируем их в диапазоне 0 - 100
                printf("%lf ",(arr[i][j] = rand()%100));
            }
            printf("\r\n");
        }
        for(j = 0; j < n; j++)
            sum += MaxColVal(m, j, arr);
        printf("Summ max elements in colums : %lf\r\n",sum);
        printf("Y - new input\r\n");
    }
    while(toupper(getch()) == 'Y');
    return 0;
}
Добавлено через 3 минуты
Ну и чтоб уж совсем на Си было память malloc-ом выделять нужно
C
1
2
3
4
5
6
7
8
9
10
11
12
arr = (double **)malloc(m*sizeof(double *));
        for(i = 0; i < m; i++)
        {
            arr[i] = (double *)malloc(n*sizeof(double));
            for(j = 0; j < n; j++)
            {
                //Чтобы числа в массиве были не очень большими 
                //генерируем их в диапазоне 0 - 100
                printf("%lf ",(arr[i][j] = rand()%100));
            }
            printf("\r\n");
        }
1
Sear
WebDeveloper
88 / 88 / 0
Регистрация: 02.02.2011
Сообщений: 1,766
28.09.2011, 10:28  [ТС] #3
вот эту ошибку выдают
[BCC32 Warning] new.c(61): W8070 Function should return a value
вот здесь
{ double ret = arr[0][iCol];
for(int i = 1; i < m; i++)
if(ret < arr[i][iCol])
ret = arr[i][iCol];
return ret;

}
0
-=ЮрА=-
Заблокирован
Автор FAQ
28.09.2011, 10:37 #4
Хорошо дабл убрал
Си без double
C
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
#include <stdio.h>//i/o
#include <stdlib.h> //srand
#include <conio.h> //getch()
#include <ctype.h> //toupper
#include <time.h>  //time()
 
//Поиск макс элемента в столбце
float MaxColVal(int m, int iCol, float **arr)
{
    float ret = arr[0][iCol];
    for(int i = 1; i < m; i++)
        if(ret < arr[i][iCol])
            ret = arr[i][iCol];
    return ret;
}
 
int main()
{
    unsigned long i,j,m,n;
    float ** arr, sum;
    do
    {
        srand(time(NULL));
        printf("Enter dimension of array\r\n");
        printf("Num of Rows    : ");scanf("%u",&m);
        printf("Num of Colums : ");scanf("%u",&n);
 
        sum = 0;//Обнуляем сумму макс элементов
        arr = (float **)malloc(m*sizeof(float *));
        for(i = 0; i < m; i++)
        {
            arr[i] = (float *)malloc(n*sizeof(float));
            for(j = 0; j < n; j++)
            {
                //Чтобы числа в массиве были не очень большими 
                //генерируем их в диапазоне 0 - 100
                printf("%f ",(arr[i][j] = rand()%100));
            }
            printf("\r\n");
        }
        for(j = 0; j < n; j++)
            sum += MaxColVal(m, j, arr);
        printf("Summ max elements in colums : %f\r\n",sum);
        printf("Y - new input\r\n");
    }
    while(toupper(getch()) == 'Y');
    return 0;
}
1
Миниатюры
вещественная матрица  
Sear
WebDeveloper
88 / 88 / 0
Регистрация: 02.02.2011
Сообщений: 1,766
28.09.2011, 10:40  [ТС] #5
он имена на вот эти скобки теперь ругается
{ double ret = arr[0][iCol];
for(int i = 1; i < m; i++)
if(ret < arr[i][iCol])
ret = arr[i][iCol];
return ret;

}
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
28.09.2011, 10:40
Привет! Вот еще темы с ответами:

Дана вещественная квадратная матрица - C++
Дана вещественная квадратная матрица. Определить: 1. произведение элементов в тех строках, которые не содержат отрицательных элементов ...

Описать класс, реализующий тип данных «вещественная матрица» - C++
Уважаемые гении программирования)) Помогите, пожалуйста написать программу на С++ (VS 2008). Заранее огромное спасибо))) Описать...

Дана вещественная матрица A(n, m). Получить матрицу B(n, n) транспонированием матрицы A - C++
Помогите пожалуйста с С++. Составить программу, использующую для хранения значений двумерный массив (матрицу). Ввод элементов массива...

Задана вещественная прямоугольная матрица. Упорядочить по возрастанию элементы каждой ее строки - C++
Задана вещественная прямоугольная матрица. Упорядочить по возрастанию элементы каждой ее строки.


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

Или воспользуйтесь поиском по форуму:
5
Yandex
Объявления
28.09.2011, 10:40
Ответ Создать тему
Опции темы

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