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

Структуры(ввод...) - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Разбиение строки на слова http://www.cyberforum.ru/cpp-beginners/thread126084.html
записываем слова через токен в массив))) не работает if который сразу после for помогите плиз....))) заранее спасибо)))) в конце само общее задание)))) #include "stdafx.h"
C++ Strings По воле случая я со строками не дружу, и с ними вообще не сталкиваюсь. Меня попросили выполнить задание, и я хочу переадресовать его вам, так как время тоже теряется. "Для произвольного текста, содержащего не более 10 строк, в каждой строке не более 80 символов, сформировать массив, элементы которого равны длинам слов. Вывести на экран исходный текст и сформированный массив." http://www.cyberforum.ru/cpp-beginners/thread126078.html
Обработка строк. C++
Определить, сколько раз в строке встречается последовательность символов «ВЕС».
C++ RSA-степень-переполнение
Хай. Проблема: нужно возводить в степень большие числа (это для шифрования методом RSA). НО: если результат меньше 19 знаков, то все в порядке. А если больше - не считает, т.к. выходит за диапазон __int64 (Например, 29^13). Что делать с этим переполнением?
C++ перевод из строк в числа http://www.cyberforum.ru/cpp-beginners/thread126031.html
помогите с корректированием задачи: дан текст, содержащий целые числа, составить программу, которая выводит на экран минимальное из чисел. тут идея с поиском в строке целых чисел и закидыванием их в массив, идея оказалась полной фигней. сделал потом решение без массива, но файл с кодом благополучно потерян. за индусский код просьба не кидать помидоры >_< #include "iostream" #include...
C++ Информация о типе Есть ли в сях возможность прочитать класс объекта в строку, заканчивающуюся нулём? Известно, что базовый класс имеет виртуальные члены. Не известно, является ли фактический класс базовым. Перегрузка для этой цели специальных членов не желательна. подробнее

Показать сообщение отдельно
Crudelis
Шаровик затейник
672 / 414 / 13
Регистрация: 06.05.2010
Сообщений: 1,109
06.05.2010, 17:43     Структуры(ввод...)
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
 
#include <iostream>                          //Подключаем библиотеку функций ввода-вывода
#include <string>
 using namespace std;
struct STUDENT{
        char FIO[30]; 
        char group[8]; 
        int ocenki[5];
} ;
//Функция сортировки списка студентов по фамилии в алфавитном порядке
//Входной параметр S - массив записей о студентах
void sortM(STUDENT *S, int N)
{
        STUDENT tmp;                               //Хранит временно данные о студенте (используется в сортировке)
        bool sort = true;                          //Указывает нужно сортировать или нет
        int i;                                     //Счетчик цикла
    //Сортировка методом пузырька
        while (sort)                               //Цикл (пока нужно сортировать)
        {
                sort=false;                            //Делаем предположение, что сортировать уже не нужно
                                for (i=0; i < N-1; i++)                    //Просматриваем все записи минус один
                        if (strcmp(S[i].FIO,S[i+1].FIO)>0) //strcmp - функция сравнения строк, если первая больше второй
                        {
                                tmp=S[i];                      //Меняем эти строки местами
                                S[i]=S[i+1];
                                S[i+1]=tmp;
                                sort=true;                     //Считаем, что нужно дальше сортировать
                        }
        }                                          //Конец цикла (пока нужно сортировать)
}
 
//Функция определения студентов хотя бы с одной двойкой
//Входной параметр S - массив записей о студентах
void student2(STUDENT *S,int N)
{
                STUDENT *T = new STUDENT[N];                             //Массив "двоечников"
        int i,j;                                   //Переменные циклов
        int k = 0;                                 //Количество "двоечников" (пока 0)
        for (i=0; i<N; i++)                       //Смотрим по всем записям
        {
                for (j=0; j<5; j++)                    //Смотрим все оценки студента
                        if (S[i].ocenki[j]==2)             //Если нашли двойку
                        {
                                T[k]=S[i];                     //Добавляем запись о студенте в массив "двоечников"
                                k++;                           //Увеличиваем число двоечников на 1
                                break;                         //Выходим из цикла по оценкам
                        }
        }
        if (k>0)                                   //Если есть студенты с двойками
        {
                cout<<endl<<"Studenti, imeuschie dvoiki:"<<endl;  //Вывод "Студенты, имеющие двойки"
 
                for (i=0; i<k; i++)                    //Выводим всех студентов с двойками
                        cout<<T[i].FIO<<"    "<<T[i].group<<endl;
        }
        else                                       //Если студентов с двойками не найдено
                cout<<endl<<"Net studentov s dvoikami"<<endl;  //Вывод "Нет студентов с двойками"
 delete []T;
}
 
 
//Объявляем функции
//Главная функция
void main()
{
    int N = 0;
    setlocale(LC_CTYPE,"Rus");
cout << "Введите количество студентов: ";
                cin >> N;
 
                STUDENT *S = new STUDENT[N];
 
                //STUDENT M[N];//Массив записей о студентах (N элементов)
        int i,j;                                   //Переменные циклов
 
 
        cout<<"Vvedite informaciu o studentah:"<<endl;  //Вывод "Введите информацию о студентах"
 
        for (i=0; i<N; i++)                       //Цикл по всем записям
        {
                cout<<"Student "<<i+1<<":"<<endl;      //Вывод "Студент 1..10"
                cout<<"FIO: ";                         //Вывод "ФИО"
 
                cin>>S[i].FIO;                         //Ввод ФИО
                cout<<"Gruppa: ";                      //Вывод "Группа"
 
                cin>>S[i].group;                       //Ввод группы
                for (j=0; j<5; j++)                    //Цикл по пяти оценкам
                {
                        cout<<"Ocenka "<<j+1<<": ";        //Вывод "Оценка 1.. 5"
 
                        cin>>S[i].ocenki[j];               //Ввод j-ой оценки
                }
        }
 
 
 
 
        sortM(S,N);                                  //Вызов функции сортировки записей
                                                   //Вывод "Упорядоченный массив записей по ФИО"
        cout<<endl<<"Uporyadochennii massiv zapisei po FIO:"<<endl;
        for (i=0; i<N; i++)
        {//Цикл по всем 10 записям
                                                       //Вывод "ФИО, группа, оценки"
                cout<<S[i].FIO<<"    "<<S[i].group<<"    ";
                for(int j=0;j<5;j++)
                    cout<<S[i].ocenki[j]<<"  ";
                cout<<endl;
        }
        student2(S,N);                               //Вызов функции определения студентов с двойками
        delete []S;
        
 
}
з.ы. на счет int ocenki[5]; я был не прав, вначале не понял поставленной задачи, и правда создается массив оценок на каждого студента
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru