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

Оформить программу в виде функций - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ В чем ошибка? http://www.cyberforum.ru/cpp-beginners/thread85303.html
Поиск по шаблону: определить номер позиции в исходной строке, начиная с которой в строке содержится шаблон S1*S2, где S1, S2-заданные подстрочники; *-произвольная последовательность символов: #include <string.h> #include <stdio.h> char str = "lazy"; char string = "The quick brown dog jumps over the lazy fox"; char fmt1 = " 1 2 3 4 5"; char...
C++ Встреча Из пункта А в пункт В выехал велосипедист со скоростью v0 км/час.Одновременно навстречу ему из пункта В "автостопом" двинулся другой путник s1 м он двигался со скоростью v1 м/час,s2 м-со скоростью v0 км/час,s3 м-со скоростью v3 км/час.Через сколько часов после старта и в какой то4ке путники встретились? Еще её нужно сделать с защитой от дураков тоесть например скорость не может быть минусовой,а... http://www.cyberforum.ru/cpp-beginners/thread85298.html
Логарифм C++
Помогите представить алгоритм в С++ коде...Завтра сдавать неуспеваю. вещ алгоритм логарифм(вх: вещ x, вещ a, вещ eps) | дано: x > 0, a > 1, eps > 0 | надо: вычислить log_a x с точностью eps начало алгоритма | вещ y, z, t; | | // инициализация | y := 0.0; z := x; t := 1.0;
Отрезки на плоскости C++
Найти расстояние между двумя произвольно заданными на плоскости отрезками. Помогите пожалуйста.
C++ Указатели, символьные строки и функции http://www.cyberforum.ru/cpp-beginners/thread85245.html
Помогите пожалуйста. Нужно разработать функцию, которая находит первое вхождение в строку заданной подстроки. Вот ссылка на работу и примерный текст программы :http://khpi-iip.mipk.kharkiv.edu/library/pgm/lab/l12.html .Заранее благодарен.
C++ Теория по абстрактным типам данных В общем нужно сделать лабораторную работу по абстрактным типам данных на Си. Не могу найти подходящую теорию, подкиньте пожалуйста где есть неплохо написанная теория по этой теме. Заранее спасибо. Вот что мне предстоит сделать. Написать 2 программы на Си которые состоит с следующих действий 1.Описания элемента структуры данных согласно с вариантом (табл.1). 2.Описания абстрактного типа... подробнее

Показать сообщение отдельно
Beg1ner
0 / 0 / 0
Регистрация: 28.10.2009
Сообщений: 9

Оформить программу в виде функций - C++

14.01.2010, 10:47. Просмотров 650. Ответов 5
Метки (Все метки)

Недавно столкнулся с такой вот задачей: Дана матрица размером M на N, нужно сформировать одномерный массив из максимальных элементов матрицы. Задача несложная, но появились проблемы на моменте выделения динамической памяти. Дан файл. Оттуда надо считать эту матрицу. Возможно, размеры её надо ввести с клавиатуры. Еще возникли сложности при объявлении переменных при переносе в функции: по условию задачи, основной код должен состоять только из вызова функций. Помогите, плз.

Добавлено через время прочтения методички
Вот, что у меня получилось за вечер. Помогите плз передалать код так, чтобы основной код состоял только из вызова функций.

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
70
71
72
73
74
75
76
77
#include <iostream>
#include <fstream>
 
using namespace std;
 
int main()
{
setlocale (LC_ALL, "Russian_Russia.1251");
ifstream file("file.txt");
if(!file.is_open())
    {
         cout << "Ошибка! Файл file.txt не найден!" << endl << endl;
         cin.get();
         cin.get();
         return 1;
    }
    
int  n, m, i, j;
cout << "Внимание! Перед вводом убедитесь, что в файле присутствует нужное число строк и столбцов и что все элементы введены верно. Для выхода нажмите Ctrl+C." << endl;
cout << endl << "Введите количество строк:" << endl;
cin >> m;
if (m < 0) 
     {
     cout << endl << "Ошибка! Количество строк не может быть отрицательным." << endl;
     cin.get();
     cin.get();
     return 1;
     }
     
cout << endl << "Введите количество столбцов:" << endl;
cin >> n;
if (n < 0) 
     {
     cout << endl << "Ошибка! Количество столбцов не может быть отрицательным." << endl;
     cin.get();
     cin.get();
     return 1;
     }
if (n == 0 || m == 0) 
     {
     cout << endl << "Элементы отсутствуют, т.к. один из размеров исходной матрицы равен нулю." << endl;
     cin.get();
     cin.get();
     return 1;
     }
 
      
float **mas = new float *[m];
for (int i = 0; i < m; i++)
mas[i] = new float [n];
 
for (i=0; i<m; i++)
for (j=0; j<n; j++)
{
    file >> mas[i][j];
}
 
     cout << endl << "Исходный массив:" << endl;
             for(i = 0; i < n; i++)
             {
                 for (j = 0; j < m; j++)
                    cout << mas[i][j] << " ";
                    cout << endl;
             }
float max = mas[0][0];
cout << endl << "Одномерный массив из максимальных элементов столбцов исходной матрицы:" << endl;
for (i=0; i<m; i++)
{
for (j=0; j<n; j++)
if (max < mas[i][j]) max = mas[i][j];
cout << max << " ";
}
delete mas;
cin.get();
cin.get();
return 0; 
}
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru