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

При создании таблицы результат выводится два раза - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Работа с файлами. Вывод нечетных строк с указанием номеров строк http://www.cyberforum.ru/cpp-beginners/thread843842.html
#include "stdafx.h" #include "stdlib.h" #include <stdio.h> #include <locale> #include <iostream> using namespace std; int main(int argc,char *argv) {setlocale (LC_ALL,"Russian");
C++ Найти минимум в каждом столбце Кому интересно решите. Так вроде не сложная. Заранее спасибо. Разработать программу, в которой создается и выводится двумерный массив Х размером 4 строк на 6 столбцов. Первые четыре строки массива заполняются целыми случайными числами в диапазоне 0…50, а каждый элемент последней строки должен быть равен минимальному из элементов предыдущих строк в соответствующем столбце. http://www.cyberforum.ru/cpp-beginners/thread843838.html
Найти S C++
Решите задачку!Заранее спасибо. Дано действительное число а, натуральное число n>1. Найти S = а(a-n)(а-2n)…(а-n2).
C++ Номинал конденсатора и допуск - отображение в цветовом коде
у меня вопрос, мне дали задание написать программу которая по разноцветному коду будет выдавать номинал конденсатора и допуск, и наоборот, тоесть взаимо-оборотный цыкл, по номиналу находить цвет и допуск и по допуску цвет и номинал. Я подумала нужно создать базу данных для цветов кода, значения допуска и номинала. вопрос в том как описать это все? как ввести в базу данных все эти вещи и сделать...
C++ Что такое NULL ? http://www.cyberforum.ru/cpp-beginners/thread843829.html
допустим присваиваем указателю или переменной или возвращаем NULL(return NULL) - что это означает? чем он отличается от нуля(false)
C++ Удалить файлы с одним расширением Доброго времени суток всем! Встала такая задача: удалить все файлы с одинаковым расширением. Знаю есть такая функция remove("c:\file.log"); Но она удаляет только заданный файл в заданной директории. А хотелось бы иметь что то вроде: remove("c:\*.log"); Т.е. просто прописать расширение файла и диск (не директорию!) на котором нужно провести удаление, т.е. получается что нужно еще реализовать... подробнее

Показать сообщение отдельно
Torna
0 / 0 / 0
Регистрация: 21.04.2013
Сообщений: 7
23.04.2013, 00:56  [ТС]     При создании таблицы результат выводится два раза
Цитата Сообщение от Croessmah Посмотреть сообщение
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
using namespace std;
 
struct BOOK
{
    int page, year;
};
 
void table(), input(), output(), search();
 
ifstream &operator>>(ifstream &in, BOOK &x)
{
    in>>x.year;
    in>>x.page;
    return in;
}
 
ostream &operator<<(ostream &out, BOOK &t)//!!!!!!!!!!!!!!!!t по ссылке передаем!!!!!!!!!!!!!!!!!!!!!!!
{
    out.setf(ios::left);
    cout<<"| "<<" | "<<setw(4)<<t.year<<" | "<<setw(5)<<t.page<<" |\n";
    cout<<"------------------------------------------------------\n";
    return out;
}
 
istream &operator>>(istream &in, BOOK &t)
{
    cout<<"Input publishing year: ";
    in>>t.year;
    cout<<"Input page count: ";
    in>>t.page;
    cout<<"\n";
    return in;
}
 
ofstream &operator<<(ofstream &out, BOOK &t)
{
    out<<t.year<<endl<<t.page<<endl;
    return out;
}
 
 
void main()
{
    char c;
    while (1)
    {
        cout<<"\n1. Create datafile";
        cout<<"\n2. Overview database";
        cout<<"\n3. Search";
        cout<<"\n4. Exit";
        cout<<"\nYour choose: ";
        cin>>c;
        switch(c)
        {
        case '1':
            input();
            break;
        case '2':
            output();
            break;
        case '3':
            search();
            break;
        case '4':
            return;
        default:
            cout<<"\nERROR! Input 1 to 4 only!\n";
        }
    }
}
 
void output()
{
    BOOK t;
    ifstream fin;
    fin.open("data.dat", ios::in);
    cout<<"Overviewing...\n";
    table();
    while(fin)
    {
        fin>>t;
          if(fin.good())//Если ошибок при чтении не было, то
             cout<<t;//выводим t
    }
    fin.close();
}
 
void input()
{
    BOOK t;
    char c;
    ofstream fout;
    fout.open("data.dat");
    do
    {
        cin>>t;
        fout<<t;
        cout<<"Continue?(y/n): ";
        cin>>c;
    } while (c=='y'|| c=='Y');
    fout.close();
}
 
void table()
{
    cout<<"------------------------------------------------\n";
    cout.setf(ios::left);
    cout<<"| "" | "<<setw(4)<<"Year"<<" | "<<setw(5)<<"Pages"<<" |\n";
    cout<<"------------------------------------------------\n";
}
 
void search()
{
    BOOK t;
    int year, page;
    ifstream fin;
    fin.open("data.dat", ios::in);
    cout<<"Enter year: ";
    cin>>year;
    cout<<"\nEnter pages: ";
    cin>>page;
    cout<<"\n\nSearching...\n";
    table();
    while(!fin.eof()){
        fin>>t;
        if (t.year==year && page<t.page)
            cout<<t;
    }
    fin.close();
    return;
}
Все равно результат выводится два раза http://puu.sh/2Fb2k.png
 
Текущее время: 06:06. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru