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

надо немного подправить, пожалуйста - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Написать программу, порождающую поток по нажатию одной из клавиш клавиатуры http://www.cyberforum.ru/cpp-beginners/thread1044535.html
Написать программу, порождающую поток по нажатию одной из клавиш клавиатуры. Каждому созданному таким образом потоку соответствует окружность в окне приложения, которая появляется в случайном месте окна приложения и движется либо во вертикали, либо по горизонтали. При достижении границы окна, окружность меняет направление своего движения на противоположное. При помощи объектов синхронизации...
C++ Сответстивие текста грамматике Есть грамматика в форме БНФ. 1 grammar notion 2 notion differenciation name integration 3 differenciation '(' ')' 4 integration '(' ')' 5 notions notion 6 sentences sentence 7 sentence syntax semantic 8 syntax item http://www.cyberforum.ru/cpp-beginners/thread1044534.html
Сумма бесконечного ряда C++
Вот само задание http://cs310727.vk.me/v310727546/ae4f/W-C2A0gLQls.jpg Извините за ссылку, не понимаю как вставить картинку
Реализация алгоритма А* (поиск кратчайших расстояний на графе) C++
В общем, уже несколько дней бьюсь над небольшой проблемой: написал поиск кратчайших путей на графе на основе алгоритма А*. Пути находятся, все хорошо, но вот незадача: не могу восстановить оптимальный путь, т.е сам кратчайший путь с целью его отображения. Получается найти только путь "брожения" алгоритма в поисках пути. Вот сам код: bool Graph::findPath(Node* node_from, Node* node_to) {...
C++ Написать программу, которая выводит координаты мыши при перемещении её над окном http://www.cyberforum.ru/cpp-beginners/thread1044523.html
Написать программу, которая выводит координаты мыши при перемещении её над окном. За ранее Благодарен!
C++ Добавить Удаление В программу Хелп Плиз!! не знаю как сделать удаление как не пытался не получается(( очень надо Я его сделал но он удаляет все ConsoleApplication12.cpp: определяет точку входа для консольного приложения. // #include "stdafx.h" #include "stdlib.h" #include "iostream" #include "windows.h" #include "iomanip" подробнее

Показать сообщение отдельно
Murkun
0 / 0 / 0
Регистрация: 05.12.2013
Сообщений: 4

надо немного подправить, пожалуйста - C++

16.12.2013, 21:43. Просмотров 189. Ответов 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
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
// Student.cpp: определяет точку входа для консольного приложения.
//
 
#include "stdafx.h"     
#include <iostream>
#include <stdio.h>
#include <tchar.h>
#include <string>
 
using namespace std;    //для использования cout и cin
 
struct STUDENT      // начало структуры
{
    char FIO[30];   // символьный массив для фамилии и инициалов
    int GrNumber;   // номер группы
    int Ocenki[5];  // массив с оценками
};
 
void Sort_Vstavki(STUDENT Array[], int size)    //функция сортировки массива структур по алфавиту
{
    int i, j;   //счетчики
    STUDENT x;  //буфер
 
    for (i = 1; i<size; i++)    //начало цикла
    {
        x = Array[i];   //помещаем i-тый элемент в буфер
        j = i - 1;      //j указывает на предыдущий элемент массива
        while ((j >= 0) && (strcmp(Array[j].FIO, x.FIO)>0)) // пока j>=0 и j-тая строка больше строки из буфера, делать
        {
            Array[j + 1] = Array[j];    // присвоить j+1 элементу значение j-го
            j--;    // j уменьшить на 1
        }
        Array[j + 1] = x;   //присвоить j+1 элементу значение буфера
    }
}
 
void Vvod (STUDENT mass[], int size)    //функция ввода данных в массив структур
{
    cout << "Press ENTER to start...\n";
    for (int i = 0; i < size; i++)
    {
        cin.ignore(); // для исключения ошибок ввода
        cout << "Enter data of " << i + 1 << " student" << endl;
        cout << "Second name and initials: "; cin.getline(mass[i].FIO, 30);     //ввод ФИО
        cout << "Group number: "; cin >> mass[i].GrNumber;      //ввод номера группы
        cin.ignore();   // для исключения ошибок ввода
        cout << "Enter 5 grades: \n";
        for (int j = 0; j < 5; j++)     //цикл ввода оценок
        {
            cin >> mass[i].Ocenki[j];   //считать оценку с клавиатуры
        }
        cout << endl;   //перевод строки
    }
}
 
void Vyvod(STUDENT mass[], int i)   //функция вывода ФИО и номера группы на экран
{
    cout << mass[i].FIO << ", group " << mass[i].GrNumber << endl; // вывод
}
 
int _tmain(int argc, _TCHAR* argv[])
{
    STUDENT mass[10];   //массив структур
    int k = 0, z=0;     //счетчик
 
    Vvod (mass, 10);    //ввод данных
 
    Sort_Vstavki (mass, 10);    //сортировка 
 
    for (int i = 0; i < 10; i++)    //цикл проверки на двоечника
    {
        k = 0;      // инициализация счетчика нулем
        for (int j = 0; j < 5; j++)     //цикл проверки каждой из оценок
        {
            if (mass[i].Ocenki[j]==2)       // если оценка равна 2
            {
                k++;    //счетчик увличить на 1
            }
        }
        if (k>0)    //если счетчик больше нуля
        {
            Vyvod(mass, i);     // вывести информацию о студенте на экран
            z++;        //z увеличить на 1
        }
    }
    if (z == 0)     //если z остался 0, то
        cout << "No students from grades 2";    //вывести сообщение
    cin.get();
    getchar();
    return 0;
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru