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

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

Войти
Регистрация
Восстановить пароль
 
Alistan
0 / 0 / 0
Регистрация: 09.03.2011
Сообщений: 4
#1

Как упростить программу на С++ - C++

09.03.2011, 18:25. Просмотров 392. Ответов 1
Метки нет (Все метки)

Собственно тред:
Задание: Создать массив записей размером N с информацией о студенте: ФИО (string), Пол (char), год рождения (Integer), стипендия (real), адрес. Ввести в массив данные о некоторых студентах группы, а затем вывести информацию из массива на экран: а) всех студентов и их данные; б) студентов мужского/женского пола; в) ФИО и адреса студентов с максимальной и минимальной стипендией.
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
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
// proekt1.cpp: определяет точку входа для консольного приложения.
//
 
#include "stdafx.h"
#include <cstdlib>
#include <iostream>
 
using namespace std;
 
void input(int num);
void output(int num);
void output_all(int num);
void output_male(int num);
void output_by_grant(int num);
 
struct inv_type 
{
    char imja[100];
    char otchestvo[100];
    char familija[100];
    char pol[100];
    int godrozhdenija;
    double stipuha;
    char adres[100];
}massiv[5];
           
int main(int argc, char *argv[])
{
 
cout << "Rukavishnikov Denis DCiM 1-1\n\n";
cout << "Zadanie 1. Laba 6\n\n";
 
    int num;
     
    cout << "Enter number of students: ";
    cin >> num;
    
    input(num);
    output_all(num);
    output_male(num);
    output_by_grant(num);
    
    system("PAUSE");
    return EXIT_SUCCESS;
}
 
void input(int num)
{            
    for (int i = 0; i < num; i ++) 
    {
        cout << "Imja: ";
        cin >> massiv[i].imja;
        cout << "Otchestvo: ";
        cin >> massiv[i].otchestvo;
        cout << "Familija: ";
        cin >> massiv[i].familija;
        cout << "Pol: (m/f)";
        cin >> massiv[i].pol;
        cout << "godrozhdenija: ";
        cin >> massiv[i].godrozhdenija;
        cout << "stipuha : ";
        cin >> massiv[i].stipuha;
        cout << "adres: ";
        cin >> massiv[i].adres;
        cout << "\n\n"; 
     }             
}
 
void output(int num)
{
            cout << massiv[num].imja << "    ";
            cout << massiv[num].otchestvo << "    ";
            cout << massiv[num].familija << "    ";
            cout << massiv[num].pol << "    ";
            cout << massiv[num].godrozhdenija << "    ";
            cout << massiv[num].stipuha << "    ";
            cout << massiv[num].adres << "    \n\n";
}
 
void output_all(int num)
{
     for (int i = 0; i < num; i++)
     {
        output(i);
     }
}
 
void output_male(int num)
{
     cout << "\nParni:\n";
     for (int i = 0; i < num; i++)
     {
               
         if (strstr (massiv[i].pol, "m"))
         {
           output(i);
         }   
     }             
}
 
void output_by_grant(int num)
{
     double max = massiv[0].stipuha;
     double min = massiv[0].stipuha;
     int j = 0;
     
     for (int i = 1; i < num ; i++)
     {
         if (massiv[i].stipuha > max)
         {
            max = massiv[i].stipuha;
            j = i;
         }
     }         
 
     cout << "Naibol`haja stipuha u: \n";
     output(j);
     
     j = 0;
     min = massiv[0].stipuha;
     
     for (int i = 1; i < num ; i++)
     {
         if (massiv[i].stipuha < min)
         {
            min = massiv[i].stipuha;
            j = i;
         }
     }    
          
     cout << "Naimen`shaja stipuha u: \n";
     output(j);
}
 
 
 
 
 
int _tmain(int argc, _TCHAR* argv[])
{
    return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.03.2011, 18:25
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Как упростить программу на С++ (C++):

как упростить программу ? - C++
С использованием операторов &quot;printf&quot; и &quot;scanf&quot; #include &lt;conio.h&gt; #include &lt;iostream&gt; #include &lt;windows.h&gt; #include &lt;math.h&gt; ...

Как упростить программу? - C++
Создайте двумерный массив 5*5. Заполните его случайными числами, выведите ваш массив на экран, подсчитайте сумму элементов в строках. ...

Как можно упростить программу?(или подкорректировать) - C++
(ссылка на задание) Вот мое решение : Код: #include &lt;stdio.h&gt; #include &lt;conio.h&gt; #include &lt;iostream.h&gt; #include...

Как упростить программу и почему она не работает на Visual Studio - C++
Доброго времени суток! Код программы, работающий через онлайн-компилятор отказывается проходить успешно на Visual Studio, не могу...

Поменять местами максимальные элементы заданных матриц. Как упростить программу? - C++
Дали задачу, я её решил, и по-моему получилось как-то нерационально. Подскажите, как можно упростить код? Заранее благодарен. Вот...

Упростить программу - C++
Программа находит повторяющиеся слова и выводит их. Слов не больше 30 и слова не более 8 символов. Помогите упростить программу использовав...

1
accept
4831 / 3252 / 165
Регистрация: 10.12.2008
Сообщений: 10,569
10.03.2011, 05:36 #2
это удалить
C++
1
2
3
4
int _tmain(int argc, _TCHAR* argv[])
{
        return 0;
}



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
void output_by_grant(int num)
{
     double max = massiv[0].stipuha;
     double min = massiv[0].stipuha;
     int j = 0;
     
     for (int i = 1; i < num ; i++)
     {
         if (massiv[i].stipuha > max)
         {
            max = massiv[i].stipuha;
            j = i;
         }
     }         
 
     cout << "Naibol`haja stipuha u: \n";
     output(j);
     
     j = 0;
     min = massiv[0].stipuha;
     
     for (int i = 1; i < num ; i++)
     {
         if (massiv[i].stipuha < min)
         {
            min = massiv[i].stipuha;
            j = i;
         }
     }    
          
     cout << "Naimen`shaja stipuha u: \n";
     output(j);
}
узнать max и min можно за один проход

C++
1
2
    cout << "Enter number of students: ";
    cin >> num;
количество должно проверяться на переполнение (допустимое количество структур - пять)
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.03.2011, 05:36
Привет! Вот еще темы с ответами:

Упростить программу - C++
дана программа: #include &quot;iostream.h&quot;//подключаем заголовочный файл iostream.h #include &quot;conio.h&quot;//подключаем заголовочный файл...

Упростить программу - C++
Ребята помогите максимально упростить код программы и убрать все лишнее, чтобы она работала. При сдаче лабы на борланде выдавал ошибки( ...

Не могу упростить программу - C++
Здравствуйте, профессионалы, у меня есть программа, она работает и всё хорошо, но я хочу её упростить, возможно ли это сделать вообще? ...

Палиндром. Можно ли упростить программу - C++
#include &lt;iostream&gt; using namespace std; int main() { int a, d, m, n, f = 0; cin &gt;&gt; d;


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

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