Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.83/6: Рейтинг темы: голосов - 6, средняя оценка - 4.83
1 / 1 / 0
Регистрация: 16.03.2016
Сообщений: 147

Структуры. Исправить вывод

19.03.2018, 18:58. Показов 1287. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Задание: На основе данных входного файла составить инвентарную ведомость склада, включив следующие данные: вид продукции, стоимость, сорт, количество. Вывести в новый файл информацию о той продукции, количество которой менее заданной величины.
Проблема: Всё работает исправно, но выводит всё по четыре раза. Прошу помощи исправить вывод в файл. Не знаю как и что дописать для вывода в самом файле.
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
#include <fstream>
#include <iostream>
#include <iomanip>
#include <string>
using namespace std;
 
ifstream in("input.txt");
ofstream out("output.txt");
struct toy {
    string name;
    int price, sort, kol;
    void print() {
        out << name << price << sort << kol;
}
};
int main() {
    int x, i(0);
    cin >> x;
    toy mas[20];
    while (in.peek() != EOF) {
        in >> mas[i].name;
        in >> mas[i].price;
        in >> mas[i].sort;
        in >> mas[i].kol;
        ++i;
        int n = i;
        for (int i = 0; i < n; ++i) {
            if (mas[i].kol <= x)
                mas[i].print();
        }
    }
        in.close();
        out.close();
 
        system("pause");
        return 0;
    }
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
19.03.2018, 18:58
Ответы с готовыми решениями:

Вывод структуры в файл. Исправить ошибки в коде
Здравствуйте. Пишу программу с структурой и вводом в файл. Выдает ошибку что не определены переменные: v, s, t, at. Помогите, пожалуйста,...

Структуры в С++ и вывод студентов со средним баллом больше 7. Исправить код
Помогите с заданием, кто понимает. Составить программу формирования файла, содержащего Ведомость студентов, сдававших сессию, содержит...

Вывод структуры, строка как элемент структуры
Описать структуру с именем TRAIN, содержащую следующие поля: □ название пункта назначения; □ номер поезда; □ время...

4
475 / 427 / 290
Регистрация: 10.03.2015
Сообщений: 1,782
19.03.2018, 19:24
Цитата Сообщение от WeAreDogs Посмотреть сообщение
int n = i;
for (int i = 0; i < n; ++i)
{ if (mas[i].kol <= x) mas[i].print(); }
Потому что этот блок находится внутри цикла while.
Как только считалась 1 запись, ее вывод. //Если условие прошло, естественно
Считалась 2 запись, вывод 1 и 2. //Аналогично
Считалась 3 запись, вывод 1, 2 и 3. //Аналогично
И так у вас будет пока не закончатся записи во входном файле, выведутся последний раз все) //Аналогично
Вынесите данный блок кода после while и будет счастье
0
1 / 1 / 0
Регистрация: 16.03.2016
Сообщений: 147
19.03.2018, 20:01  [ТС]
SuperKir, Не могли бы вы исправить? не получается
0
475 / 427 / 290
Регистрация: 10.03.2015
Сообщений: 1,782
19.03.2018, 20:35
Лучший ответ Сообщение было отмечено WeAreDogs как решение

Решение

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
while (!in.eof())  //если конечно в файле точно есть нужное количество параметров
{
    in >> mas[i].name;
    in >> mas[i].price;
    in >> mas[i].sort;
    in >> mas[i].kol;
    ++i;
}
    int n = i;
    for (int i = 0; i < n; i++) 
    {
        if (mas[i].kol <= x)
            mas[i].print();
    }
1
1 / 1 / 0
Регистрация: 16.03.2016
Сообщений: 147
19.03.2018, 20:54  [ТС]
SuperKir, Спасибо большое
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
19.03.2018, 20:54
Помогаю со студенческими работами здесь

Исправить сортировку структуры
#pragma hdrstop #pragma argsused #include &lt;tchar.h&gt; #include &lt;stdio.h&gt; #include &lt;stdlib.h&gt; #include &lt;iostream.h&gt; using...

Задача. Структуры. Исправить ошибки
Здравствуйте. Задача: Сведения об ученике состоят из его имени, фамилии, класса котором он учится, оценок, полученных учеником за год....

Исправить ошибки в коде на структуры данных
Преподаватель в качестве примера структуры данных прикрепил этот код, а в вижуал студио вылезают ошибки, которые я сам исправить не могу ...

Массив с элементами структуры (исправить ошибку)
Доброе утро форумчани! Помогите пожалуйста исправить обработчик. Программа должна найти в массиве фильм, жанр которого соответствует...

Оформление списка в виде структуры, исправить ошибку в коде
Здравствуйте, есть проблема, нужно оформить список в виде структуры, но вот есть ошибка в строке, не могу понять в чем, но при компиляции...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Вывод диалогового окна перед закрытием, если документ не проведён
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать программный контроль на предмет проведения документа. . .
Программный контроль заполнения реквизита табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать контроль заполнения реквизита "ПричинаСписания". . .
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение: DISM / Online / Add-Capability / CapabilityName:WMIC~~~~ Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: при создании документов установить период списания автоматически. . .
Вывод данных в справочнике через динамический список
Maks 01.04.2026
Реализация из решения ниже выполнена на примере нетипового справочника "Спецтехника" разработанного в конфигурации КА2. Задача: вывести данные из ТЧ нетипового документа. . .
Программное заполнения текстового поля в реквизите формы документа
Maks 01.04.2026
Алгоритм из решения ниже реализован на нетиповом документе "ВыдачаОборудованияНаСпецтехнику" разработанного в конфигурации КА2, в дополнении к предыдущему решению. На форме документа создается. . .
К слову об оптимизации
kumehtar 01.04.2026
Вспоминаю начало 2000-х, университет, когда я писал на Delphi. Тогда среди программистов на форумах активно обсуждали аккуратную работу с памятью: нужно было следить за переменными, вовремя. . .
Идея фильтра интернета (сервер = слой+фильтр).
Hrethgir 31.03.2026
Суть идеи заключается в том, чтобы запустить свой сервер, о чём я если честно мечтал давно и давно приобрёл книгу как это сделать. Но не было причин его запускать. Очумелые учёные напечатали на. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru