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

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

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

комментировать код - C++

12.03.2013, 09:24. Просмотров 358. Ответов 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
/*Написать программу, которая выполняет следующие действия:
• вводит с клавиатуры данные в массив, состоящий из десяти структур; записи должны быть размещены по алфавиту;
• выводит на дисплей фамилии работников, чей стаж работы в организации превышает значение, введенное с клавиатуры;
• если таких работников нет, вывести на дисплей соответствующее сообщение.*/
 
#include <iostream>
using namespace std; 
struct WORKER 
{
    char surname[40]; 
    char name[40]; 
    char post[40];
    int date; 
};
int main() 
{
    setlocale(LC_ALL, "rus");
    int const N = 10;
    int staj;
    bool f = true;
    WORKER mass[N];
    for( int i = 0; i < N; i++ )
    {
        cout << "Введите информацию о сотруднике №" << i+1 << "\n\n";
        cout << " Фамилия: ";    cin >> mass[i].surname;
        cout << " Имя: "; 
        cin >> mass[i].name;
        cout << " Должность: "; 
        cin >> mass[i].post;
        cout << " Год поступление на работу: "; 
        cin >> mass[i].date;
        cout<<"\n";
    }
    cout << "Введите стаж работы в организации (текущий год 2013): ";
    cin >> staj;
 
    cout << "\nФамилии работников, чей стаж работы в организации превышает " << staj << " лет:\n\n";
    for( int i = 0; i < N; i++ )
    {
        if( (2013 - mass[i].date) > staj )
        {
            cout << mass[i].surname << endl;
            f = false;
        }
    }
    if(f)
        cout << "\nНет таких людей." << endl;
    system("pause");
    return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.03.2013, 09:24     комментировать код
Посмотрите здесь:

C++ Найти все натуральные числа, не превосходящие N, и делящиеся на каждую из своих цифр (комментировать код!)
Комментировать! C++
комментировать C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Afflicted
Обитатель форума
199 / 182 / 8
Регистрация: 28.10.2012
Сообщений: 542
12.03.2013, 09:32     комментировать код #2
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
#include <iostream> 
using namespace std; // используемое пространство имен
 
struct WORKER // структура
{
    char surname[40]; 
    char name[40]; 
    char post[40];
    int date; 
};
int main() 
{
    setlocale(LC_ALL, "rus");  // использование рус. языка
    int const N = 10;  // размер массива структур
    int staj; 
    bool f = true;  // булевая переменная, изначально присваивается истинное значение.
    WORKER mass[N];  // создание массива структур
    for( int i = 0; i < N; i++ )  // цикл для заполнения массива структур
    {
        cout << "Введите информацию о сотруднике №" << i+1 << "\n\n";
        cout << " Фамилия: ";    cin >> mass[i].surname;
        cout << " Имя: "; 
        cin >> mass[i].name;
        cout << " Должность: "; 
        cin >> mass[i].post;
        cout << " Год поступление на работу: "; 
        cin >> mass[i].date;
        cout<<"\n";
    }
    cout << "Введите стаж работы в организации (текущий год 2013): ";
    cin >> staj;
 
    cout << "\nФамилии работников, чей стаж работы в организации превышает " << staj << " лет:\n\n";
    for( int i = 0; i < N; i++ )  // поиск работников
    {
        if( (2013 - mass[i].date) > staj )
             // может быть я ошибаюсь, но тут может быть ошибка при расчете?
             //  например, вводим стаж работы: 10 лет. А у работника, например, 2 года
             // 2013 - 2 = 2011. 2011 больше 10. В итоге выводим, что стаж работника
             // больше, а на самом-то деле он меньше
        {
            cout << mass[i].surname << endl;
            f = false;  // присваиваем ложь. 
        }
    }
    if(f)  // если истинно, то...
        cout << "\nНет таких людей." << endl;
    system("pause");  // ожидание нажатия клавиши
    return 0;
}
Yandex
Объявления
12.03.2013, 09:32     комментировать код
Ответ Создать тему
Опции темы

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