0 / 0 / 0
Регистрация: 25.12.2017
Сообщений: 1
1

Объяснить ход действий решения задачи на структуры с файлами

18.01.2018, 23:54. Показов 790. Ответов 1
Метки нет (Все метки)

Задание было таковым: Определить, на какую сумму имеется в каждом магазине товара, и вывести на экран результат в виде таблицы.
Объясните что происходит в каждой строке и в особенности все после void print. Я не могу понять как происходит вывод на экран данных.
И есть ли в программе ошибки?

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
#include "stdafx.h" 
#include <stdio.h> 
#include <iostream> 
#include <fstream> 
#include <math.h> 
 
using namespace std;
 
struct product
{
    char name_product[10][128];
    int count_product[10];
    int price_product[10];
};
 
struct store
{
    int number;
    char manager_surname[128];
    product product;
};
 
store input(ifstream &file, int *sum)
{
    store in;
    int tmp = 0;
 
    file >> in.number;
    file >> in.manager_surname;
    for (int i = 0; i < 10; ++i)
    {
        file >> in.product.name_product[i];
        file >> in.product.count_product[i];
        file >> in.product.price_product[i];
        tmp += (in.product.price_product[i] * in.product.count_product[i]);
    }
    *sum = tmp;
 
    return in;
}
 
void print(store elem)
{
    cout << "Number store: " << elem.number << endl;
    cout << "Manager: " << elem.manager_surname << endl;
    cout << "Product | Price: " << endl;
    for (int i = 0; i < 10; ++i)
    {
        cout << elem.product.name_product[i] << " " << elem.product.price_product[i] << endl;
    }
}
 
void print(store *base, int size, int sum)
{
    
    for (int i = 0; i < size; i++)
    {
        print(base[i]);
        cout << "Money in store: " << sum << endl;
        
        cout << endl;
    }
}
 
int main(void)
{
    const int size = 10;
    store array_point[size];
    int sum = 0;
    
    ifstream file("test.txt");
    for (int i = 0; i < size; ++i)
    {
        array_point[i] = input(file, &sum);
    }
    
    print(array_point, size, sum);
 
    system("pause");
    return 0;
}
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
18.01.2018, 23:54
Ответы с готовыми решениями:

Сортировка вставкой: объяснить ход действий
помогите разобрать сами действия сортировки, что они значат Добавлено через 17 секунд int...

предложите ход решения сложной задачи по теоретической механики
&lt;noindex&gt;Задача: &quot;Найти период малых колебаний полуокружности радиуса R и массы m, опирающуюся на...

Разработать приложение, отображающее на экране ход решения следующей задачи: на плоскости случайным образом заданы множ
Разработать приложение, отображающее на экране ход решения следующей задачи: на плоскости...

Составить программу последовательно используя для решения задачи все три циклические управляющие структуры
Помогите пожалуйста сижу 4 час не могу составить алгоритм и программу. Составить программу...

1
54 / 48 / 31
Регистрация: 14.04.2015
Сообщений: 273
19.01.2018, 07:13 2
Цитата Сообщение от Snof Посмотреть сообщение
Я не могу понять как происходит вывод на экран данных.
Вывод на экран происход за счет оператора cout. В твоем коде строчка 44, 45, 46 это вывод информации

C++
1
cout << "Number store: " << elem.number << endl;
cout - оператор вывода
<< - поток
"Text" - любой тест который будет выведен на экран
elem.number - вывод значения переменной
endl - оператор перехода на новую строку.

C++
1
2
3
4
for (int i = 0; i < 10; ++i) 
{ 
cout << elem.product.name_product[i] << " " << elem.product.price_product[i] << endl; 
}
for - начало цикла
int i = 0 - объявление переменной и присвоение ей значение 0

i<10 - условие цикла если i будет больше 10 значит цикл закончиться

++i - могу ошибаться но это шаг цикла, с каждым новым разом прохода цикла переменная i будет повышаться на 1


а потом уже стандартная тебе процедура вывода информации.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
19.01.2018, 07:13
Помогаю со студенческими работами здесь

Понять правильный ход действий. Создание ограничений и фильтров, запросов и форм
Добрый день дорогие помощники! Контрольную делаю в Microsoft Access-2010. Файл прилагаю. ПС...

Ход решения
Здравствуйте! Объясните пожалуйста ход решения этих примеров. Как и что из чего получилось?

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

Рекуррентное уравнение, ход решения
Здравствуйте, пытаюсь решить следующее рекуррентное уравнение с помощью производящих функций....


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru