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

Обработка записей (список учеников имеет следующую структуру: фамилия – номер школы – число баллов по ЕГЭ – оценка) - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Прямые на плоскости(С++) http://www.cyberforum.ru/cpp-beginners/thread884925.html
Доброго времени суток господа. Помогите пожалуйста написать эту задачку в С++. Сам с этой задачей пока не разбирался, времени нету, а задач много :cry: (сам пока другими разбираюсь :pardon:) Прямая на плоскости может быть задано уравнением ax+by+c=0, где a и b одновременно не равны нулю. Будем рассматривать прямые только с целыми коэффициентами a,b,c.Пусть даны коэффициенты нескольких прямых:...
C++ void в проекте на c++ Создаю проект, создал модули состоящие из текста! пытаюсь объединить все в одном модуле вывод ошибку! что нужно исправить вот код #include <iostream> #include <stdio.h> #define CASE using namespace std; void arp (); void ipconfig (); void getmac (); void nbtstat (); void netsh (); http://www.cyberforum.ru/cpp-beginners/thread884903.html
написать такой класс, который представляет собой двоичное число C++
не могу справиться вот с этим: написать такой класс, который представляет собой двоичное число. биты держит в виде объекта std::vector <bool>. написать для этого класса следующие операции: слож, выч, умнож, и битовые операции 'и' и 'или' (числа могут быть разной длины, в этом случае они выравниваются по младшему(правому) биту) помогите пожалуйста кто чем может. Хотя бы с чего начать
C++ Найти все целые числа из промежутка от 300 до 600, у которых сумма делителей кратна 10 (Netbeans)
Ребят, помогите пожалуйста написать программу для данной задачи: Найти все целые числа из промежутка от 300 до 600, у которых сумма делителей кратна 10. Никак не получается:( Либо ошибку выдает либо ответ несоответствующий условию выходит.
C++ Выполнить сортировку одномерного массива X(100) методом бинарных вставок http://www.cyberforum.ru/cpp-beginners/thread884842.html
Здравствуйте уважаемые пользователи форума, прошу составить программу в с++ просто нужно сдать программу эту через 2 дня
C++ Заполнить массив по следующему правилу Заполнить массив А с 6 строк и 9 столбцов по следующему правилу: подробнее

Показать сообщение отдельно
Polovnik
Сообщений: n/a
30.05.2013, 13:33     Обработка записей (список учеников имеет следующую структуру: фамилия – номер школы – число баллов по ЕГЭ – оценка)
Разработать и отладить программу обработки записей. Предусмотреть:
- ввод данных
- вывод результатов (на экран в виде таблицы и в файл)

Задача:

Список учеников имеет следующую структуру: фамилия – номер школы – число баллов по ЕГЭ (от 0 до 100) – оценка. При вводе числа баллов рассчитайте оценку (до 40 баллов – «2», 40-59 баллов – «3», 60-89 баллов – «4», 90-100 баллов – «5») и выведите информацию об учениках в виде таблицы.
1) Вывести фамилии и номер школы учеников, получивших оценку «3».
2) Вывести информацию об учениках данной школы (номер школы ввести с клавиатуры).
3) Выполнить сортировку списка по количество баллов, вывести отсортированный список

Если возможно, то сделать программу через Case, чтобы по нажатию цифр (1,2,3) выбирать что необходимо сделать

Программа написана, однако она работает не совсем правильно, не могу понять почему. Проблема в том, что после того как я ввел данные по первому человеку он меня перебрасывает на ввод "Число баллов по ЕГЭ" у второго, хотя она должна была перекинуть на строку с "Фамилия", потом "Номер школы".
Плюс я не смог сделать все это через Case

Вот сама программа

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
#include "stdafx.h"
#include <iostream>
#include <vector>
 
 
using namespace std;
 
struct student
{
    char name[50];
    int schoolnumber;
    int points;
    int rating;
};
 
void output_1 (vector<student> list)
{
    cout<<"Имя\tНомер школы\tБаллы ЕГЭ\tОценка"<<endl;
    for (int i=0; i<list.size(); i++)
    {
        cout<<list[i].name<<"\t"<<list[i].schoolnumber<<"\t"<<list[i].points<<"\t"<<list[i].rating<<endl;
    }
}
 
void output_2 (vector<student> list)
{
    cout<<"Имя\tНомер школы\tБаллы ЕГЭ\tОценка"<<endl;
    for (int i=0; i<list.size(); i++)
    {
        if (list[i].rating==3)
            cout<<list[i].name<<"\t"<<list[i].schoolnumber<<endl;
    }
}
 
void output_3 (vector<student> list)
{
    int n=0;
    cout<<"Введите номер школы для вывода: "<<endl;
    cin>>n;
    cout<<"\nИмя\tНомер школы\tБаллы ЕГЭ\tОценка"<<endl;
    for (int i=0; i<list.size(); i++)
    {
        if (list[i].schoolnumber==n)
            cout<<list[i].name<<"\t"<<list[i].schoolnumber<<"\t"<<list[i].points<<"\t"<<list[i].rating<<endl;
    }
}
 
void output_4 (vector<student> list)
{
    student st1;
    bool f=1;
    while (f=1)
    {
        f=0;
        for (int i=0; i<list.size()-1; i++)
            if (list[i].points>list[i+1].points)
            {
                st1=list[i];
                list[i]=list[i+1];
                list[i+1]=st1;
                f=1;
            }
    }
    cout<<"\nИмя\tНомер школы\tБаллы ЕГЭ\tОценка"<<endl;
    for (int i=0; i<list.size(); i++)
    {
        cout<<list[i].name<<"\t"<<list[i].schoolnumber<<"\t"<<list[i].points<<"\t"<<list[i].rating<<endl;
    }
}
 
 
 
student input_st ()
{
    student st1;
    cout<<"Введите данные по ученику: "<<"\nИмя ученика: ";
    cin.getline(st1.name,50);
    cout<<"\nНомер школы: ";
    cin>>st1.schoolnumber;
    cout<<"\nКоличество баллов ЕГЭ: ";
    cin>>st1.points;
    cout<<endl;
    if (st1.points<40) st1.rating=2;
    if ((st1.points>=40) && (st1.points<60)) st1.rating=3;
    if ((st1.points>=60) && (st1.points<90)) st1.rating=4;
    if (st1.points>=90) st1.rating=5;
    return st1; 
}
 
int main()
{
    setlocale (0,"");
    vector <student> list;
    bool flag=1;
    while (flag==1)
    {
        system("cls");
        list.push_back(input_st());
        cout<<"Ввести еще одного ученика? да - 1; нет - 0"<<endl;
        cin>>flag;
    }
    
    cout<<"\nВывод всей информации: "<<endl;
    output_1(list);
    system("pause");
 
    cout<<"\nВывод всей информации по троечникам: "<<endl;
    output_2(list);
    system("pause");
 
    cout<<"\nВывод всей информации по определенной школе: "<<endl;
    output_3(list);
    system("pause");
 
    cout<<"\nВывод отсортированной информации: "<<endl;
    output_4(list);
    system("pause");
 
    return 0;
}
Буду очень признателен за помощь.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 05:30. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru