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

Не повторяется цикл - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Удалить из массива первый положительный элемент, определить, есть ли в массиве заданное число http://www.cyberforum.ru/cpp-beginners/thread1042706.html
Использовать обращение к элементам матрицы с помощью операции и через указатель. Ввод элементов массива осуществлять с клавиатуры. Во время отладки и тестирования программы размер массива можно...
C++ Подсчитать количество слов в данной последовательности Дана строка длиной n символов. Группы символов, которые разделены пропусками (одним, несколькими ли), будем считать словами. Подсчитать количество слов в данной последовательности. http://www.cyberforum.ru/cpp-beginners/thread1042705.html
Составить программу, которая подсчитывает количество слов в тексте C++
Из клавиатуры вводится текстовая строка. Составить программу, которая подсчитывает количество слов в тексте; выводит на экран слово, которое содержит наибольшее количество голосних букв; удаляет из...
Сумма элементов главной диагонали матрицы C++
Такая проблема... Можете помочь с кодом. Как сделать что-бы считало элементы главной диагонали квадратной матрицы? #include<iostream> //library #include <stdio.h> //library #include <math.h>...
C++ Структура: Отсортировать элементы структуры за увеличением года основания http://www.cyberforum.ru/cpp-beginners/thread1042686.html
Помогите плс, нужно отсортировать элементы структуры за увеличением года основания (переменная year) Данными структуру я заполнил, а получить к ним доступ не выходит. Хотя, по идее, они должны быть...
C++ После последней буквы каждого слова вставить точку Здравствуйте ! Подскажите пожалуйста как решить задачу: После последней буквы каждого слова вставить точку. Лишние символы (с81-ого) отбросить. подробнее

Показать сообщение отдельно
BRcr
4008 / 2297 / 155
Регистрация: 03.02.2011
Сообщений: 5,064
Записей в блоге: 10
16.12.2013, 13:50
А это потому что форматировать код надо по человечески. Посмотри, где у тебя находится команда 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
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
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
struct Recept { // ВЛОЖЕННАЯ СТРУКТУРА.
 
    char name[50]; // название рецепта.
 
    struct Ingredienty
    { // структура в которой будут храниться ингредиенты для будущего блюда.
 
        char Nazvanie[50]; // название ингредиента.
        int kolicestvo; // количество ингредиента.
    } Ingredient[10];
 
    char Prigotovlenie[500]; // рецепт приготовления.
    int kol;
} Receptura;
 
struct Sklad { // Структура товаров на складе.
 
    char Naimenovanie[50];
    int cena;
    int kolicestvo;
} NaSklade;
 
// ######################## главная программа. ##########################
int main(int argc, char *argv[]) {
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);
    char n, p; // <—-переманные выбора
    int w, i, N, j; // <—-переменные счётчика
    w = 1;
    while (1) {
        system("cls"); // <—–очистить окно консоли
        cout << "\tМЕНЮ\n[1]-НОВЫЙ РЕЦЕПТ \n[2]-ПОИСК РЕЦЕПТА \n[3]-ДОБАВИТЬ ПРОДУКТ НА СКЛАД\n[4]-ВСЕ ПРОДУКТЫ НА СКЛАДЕ\n[5]-УДАЛИТЬ РЕЦЕПТ \n "
            << endl;
        cin >> n;
        switch (n) // ——— ВЫБОР ПУНКТА МЕНЮ.
        {
        case '1': // <————–НОВЫЙ РЕЦЕПТ (ДОБАВЛЕНИЕ!).
            {
                system("cls");
                FILE *f = fopen("receptura.txt", "ab+");
                cout << "Введи название рецепта: ";
                cin >> Receptura.name;
                cout << "Введи количество ингредиентов: ";
                cin >> Receptura.kol;
                for (int i = 0; i < Receptura.kol; i++) {
                    cout << "Введи название ингредиента: ";
                    cin >> Receptura.Ingredient[i].Nazvanie;
                    cout << "Введи количество ингредиента: ";
                    cin >> Receptura.Ingredient[i].kolicestvo;
                }
                cout << "Введи рецепт приготовления: ";
                cin >> Receptura.Prigotovlenie;
                fwrite(&Receptura, sizeof(Receptura), 1, f);
            } break; // ——————- Конец добавления.
 
        case '2': // ———— СЧИТЫВАНИЕ РЕЦЕПТА.
            {
                system("cls");
                string sname;
                int skol;
                SetConsoleCP(1251);
                SetConsoleOutputCP(1251);
                cout << "введи название рецепта для поиска: ";
                cin >> sname;
                FILE *f = fopen("receptura.txt", "rb+");
                FILE *f1 = fopen("search.txt", "ab+");
                for (; !feof(f);) {
                    fread(&Receptura, sizeof(Receptura), 1, f);
                    if (Receptura.name == sname) {
                        cout << "Название рецепта: ";
                        cout << Receptura.name << endl;
                        skol = Receptura.kol;
                        for (int i = 0; i < skol; i++) {
                            cout << "Название ингредиента: ";
                            cout << Receptura.Ingredient[i].Nazvanie << '\t';
                            cout << "Количество ингредиента: ";
                            cout << Receptura.Ingredient[i].kolicestvo << endl;
                        }
                        cout << "Рецепт приготовления: ";
                        cout << Receptura.Prigotovlenie << endl << endl;
                        fwrite(&Receptura, sizeof(Receptura), 1, f1);
                    }
                }
            } break; // ————– КОНЕЦ СЧИТЫВАНИЯ РЕЦЕПТА.
 
        case '3': // ———— Добавить в продукт на складе
            {
                system("cls");
                FILE*fw;
                fw = fopen("sklad.txt", "a"); // open file
                N = 1;
                for (int i = 0; i < N; i++) {
                    cout << "Введи наименование товара: ";
                    cin >> NaSklade.Naimenovanie;
                    cout << endl;
                    cout << "Введи цену товара: ";
                    cin >> NaSklade.cena;
                    cout << endl;
                    cout << "Введи количество товара: ";
                    cin >> NaSklade.kolicestvo;
                    cout << endl;
                    getch();
                    fwrite(&NaSklade, sizeof(Sklad), 1, fw);
                }
                fclose(fw);
            }
 
        case '4': // ———— продукты на складе
            {
                system("cls");
                SetConsoleCP(1251);
                SetConsoleOutputCP(1251);
                FILE*fw;
                fw = fopen("sklad.txt", "r"); // open file
                while (fread(&NaSklade, sizeof(Sklad), 1, fw) > 0) {
                    cout << "Введи наименование товара: " <<
                        NaSklade.Naimenovanie;
                    cout << endl;
                    cout << "Введи цену товара: " << NaSklade.cena;
                    cout << endl;
                    cout << "Введи количество товара: " << NaSklade.kolicestvo;
                    cout << endl;
                    cout << "———————————-" << endl;
                }
                fclose(fw);
 
            } break;
 
        case '5': // ———— УДАЛИТЬ ПРОДУКТ НА СКЛАДЕ
            {
                system("cls");
                char str[100];
                SetConsoleCP(1251);
                SetConsoleOutputCP(1251);
                int koll;
                FILE*fw;
                cout << "Введите название продукта для удаления: ";
                cin >> str;
                fw = fopen("receptura.txt", "r+");
                while (fread(&NaSklade, sizeof(Sklad), 1, fw) > 0)
                    if (NaSklade.Naimenovanie != str) {
                        cout << "наименование товара: " <<
                            NaSklade.Naimenovanie;
                        cout << endl;
                        cout << "Цена товара: " << NaSklade.cena;
                        cout << endl;
                        cout << "Количество товара: " << NaSklade.kolicestvo;
                        cout << endl;
                        cout << "———————–";
                        fwrite(&NaSklade, sizeof(Sklad), 1, fw);
                        fclose(fw);
                    }
            } // ————– закрытие switch
        } // ————– закрытие switch
        return 0;
    }
}
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru