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

Функции в программе - C++

Восстановить пароль Регистрация
 
Coolooc
0 / 0 / 0
Регистрация: 29.03.2013
Сообщений: 47
25.05.2013, 22:04     Функции в программе #1
Здравствуйте, имею вот такую задачку, нужно её переделать по функциям.
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
/* Дана целочисленная квадратная матрица. Опередить:
1) произведение элементов в тех строках,
которые не содержат отрицательных элементов.
2) максимум среди сумм элементов диагоналей,
параллельных главной диагонали матрицы. */
#include <iostream.h>
int main()
{
int N; // размер массива
int A[5][5]; // целочисленный массив
int Pro; // произведение элементов
int Sum; // сумма элементов диагоналей
int Max; // максимум среди сумм
bool bol; // флаг наличия отрицательного числа
// ввод данных
cout << "Vvedite N="; // вывод строки
cin >>N; // считываем значение стороны
// Решение
cout<<"vvedite "<<N<<" strok po "<<N<<" elementotv"<<endl;
for (int i=1;i<=N;i++){
cout<<i<<") ";
for (int j=1;j<=N;j++)
{
cin>>A[i][j]; // формирование массива
}
}
cout <<"Otvet" << endl; // вывод результата
// 1) задание
for (int i=1;i<=N;i++)
{
Pro=1;
bol = true ;
for (int j=1;j<=N;j++)
{
if(A[i][j]<0)bol = false;
Pro*=A[i][j];
}
if (bol){ cout<<"proizvedenie elementov "<<i<<" stroki = "<<Pro<<endl;}
}
// 2) задание
Max=A[1][1];
for (int i=1;i<=N;i++)
{
// проверка диагоналей со строки
Sum=0;
for (int jj=1;jj<=(N-i+1);jj++)
{
{Sum+=A[jj][jj+i-1];}
}
if (Sum>Max){Max=Sum;}
// проверка диагоналей со столбца
Sum=0;
for (int jj=1;jj<=(N-i+1);jj++){
{Sum+=A[jj+i-1][jj];}
}
if (Sum>Max){Max=Sum;}
}
cout<<"maksimum sredi summ elementov diagonalei, parallelnyh glavnoi diagonali matritcy = "<<Max<<endl;
system("PAUSE");
return 0;
}
Добавлено через 6 минут
Кажется разобрался сам, но если кто предложит, что другое - скажу спасибо !
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
#include <iostream.h>
#include <math.h>
 
 
void qwer(int mas[5])
{
int i,null,sum,min;
int n=5; 
//êîëè÷åñòâî ýëåìåГ*òîâ Г¬Г*Г±Г±ГЁГўГ* = 0
null=0;
for (i=0; i<n; i++)
if (mas[i]==0) null++;
cout << "\n koli4estvo elementov massiva = 0: " << null << endl;
//ñóììГ* ýëåìåГ*òîâ Г¬Г*Г±Г±ГЁГўГ*, Г°Г*ñïîëîæåГ*Г*ûõ ïîñëå ìèГ*ГЁГ¬Г*ëüГ*îãî ýëåìåГ*ГІГ*
sum=0;
min=0;
for(i=1; i<n; i++)
if (mas[i]<mas[min]) min=i;
for (i=min+1; i<n; i++)
sum+=mas[i];
cout << "\n cymma elementov massiva, raspolojenih posle minimalnogo elementa = " << sum << endl;
}
 
void asdf(int mas[5])
{
int i,j,t;
int n=5;
//ýëåìåГ*ГІГ» Г¬Г*Г±Г±ГЁГўГ* ГЇГ® âîçðГ*Г±ГІГ*Г*ГЁГѕ ГҐГЈГ® ìîäóëåé
for (i=0; i<n-1; i++)
for (j=i+1; j<n; j++)
if (abs(mas[i])>abs(mas[j]))
{
t=mas[i];
mas[i]=mas[j];
mas[j]=t;
}
cout << "\n elementi massiva po vozrastaniu ego modylei:" << endl;
for(i=0; i<n; i++)
cout << mas[i] <<" "<< endl;
}
 
int main()
{
int mas[5], i;
int n=5;
//ââîä Г¬Г*Г±Г±ГЁГўГ*
cout << "\n vvidite elementi massiva:" << endl;
for (i=0; i<n; i++)
cin >> mas[i];
 
qwer(mas);
asdf(mas);
 
system("PAUSE");
return 0;
}
Добавлено через 33 минуты
Первый не тот код вставил ))
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
#include <iostream.h>
#include <math.h>
int main()
{
const int n =5;
int mas[n], i, null, min, sum, j, t;
//ââîä Г¬Г*Г±Г±ГЁГўГ*
cout << "\n Vvedite elementy massiva: " << endl;
for (i=0; i<n; i++)
cin >> mas[i];
//êîëè÷åñòâî ýëåìåГ*òîâ Г¬Г*Г±Г±ГЁГўГ* = 0
null=0;
for (i=0; i<n; i++)
if (mas[i]==0) null++;
cout << "\n Kolichestvo elementov massiva ravnyh nylu = " << null << endl;
//ñóììГ* ýëåìåГ*òîâ Г¬Г*Г±Г±ГЁГўГ*, Г°Г*ñïîëîæåГ*Г*ûõ ïîñëå ìèГ*ГЁГ¬Г*ëüГ*îãî ýëåìåГ*ГІГ*
sum=0;
min=0;
for(i=1; i<n; i++)
if (mas[i]<mas[min]) min=i;
for (i=min+1; i<n; i++)
sum+=mas[i];
cout << "\n Cumma elementov massiva, raspolozhennykh posle minimalnogo elementa = " << sum << endl;
//ýëåìåГ*ГІГ» Г¬Г*Г±Г±ГЁГўГ* ГЇГ® âîçðГ*Г±ГІГ*Г*ГЁГѕ ГҐГЈГ® ìîäóëåé
for (i=0; i<n-1; i++)
for (j=i+1; j<n; j++)
if (abs(mas[i])>abs(mas[j]))
{
t=mas[i];
mas[i]=mas[j];
mas[j]=t;
}
cout << "\n Elementy massiva po vozrastaniiu ego modulei: " << endl;
for(i=0; i<n; i++)
cout << mas[i] <<" "<< endl;
system("PAUSE");
return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.05.2013, 22:04     Функции в программе
Посмотрите здесь:

В программе в отдельной функции подсчитать количество C++
C++ Функции. Ошибка в программе? Неинициализированную переменную использовали
C++ Ошибка в программе(функции)
две функции в одной программе C++
Добавить функции в программе со структурой NOTE C++
C++ Помогите найти ошибку в программе вычисления значения функции
Ошибка в программе интерполяция функции методом Ньютона C++
Ошибки в программе интерполяции функции C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

Текущее время: 16:17. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru