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

Чтение из файла и запись в файл - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Двойной связный список http://www.cyberforum.ru/cpp-beginners/thread999646.html
Добрый день. Проблема со списком такая. Нужна проверка на повторение введённых чисел. Условие такое что числа не могут повторятся. Подскажите как это реализовать? #include <cstdlib> #include...
C++ Нужно из строки символов удалить символы которые встречаются в нем только один раз Помогите пожалуйста! Очень нужно. http://www.cyberforum.ru/cpp-beginners/thread999637.html
C++ Составить программу выбирающего из введенного массива чисел, все, числа кратные 10
Составить программу выбирающего из введенного массива чисел, все, числа кратные 10
C++ "Олимпиадная задачка"
Напишите программу, которая в последовательности натуральных чисел определяет минимальное число, оканчивающееся на 4. Программа получает на вход количество чисел в последовательности, а затем сами...
C++ Упорядочить строки целочисленной http://www.cyberforum.ru/cpp-beginners/thread999617.html
Приветствую всех, мне нужно помощь в решении этой задачи, сам не могу поймать баг.. в целом все работает, но на деле выводит не до конца отредактированный массив. Заранее благодарен! Упорядочить...
C++ Конкатенация строк через функцию Пытался я сделать программу, которая соединяет две строки. Сделал я все это так порнографично (через функцию), так-как такое домашнее задание, по закреплению знаний об функции. #include <conio.h>... подробнее

Показать сообщение отдельно
Zig_Stas
8 / 8 / 1
Регистрация: 26.10.2013
Сообщений: 55

Чтение из файла и запись в файл - C++

06.11.2013, 15:11. Просмотров 952. Ответов 1
Метки (Все метки)

Доброго времени суток.
Идея в чем:
Пример входных данных из файла:
5
o 3
c 4
o 5
c 6
o 7

Вопрос вот в чем: ниже приведена программа. В эту программу, в выбор "case 2:" нужно добавить функции считывания из файла информации:
1) для класса окружность - нахождение и вывод в файл информации о максимальной площади окружности
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
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
#include <iostream>
#include <fstream>
#include <math.h>
using namespace std;
class okr
{ 
protected: 
    int r; 
    float S,C;  
public:
    float setr (int R);
    float vichS ();
    float vichC ();
    void printokr();
};
float okr::setr (int R)
{
    r=R;
    return r;
}
 
float okr::vichS ()
{
    S=3.14*r*r;
    return S;
}
 
float okr::vichC ()
{
    C=2*3.14*r;
    return C;
}
void okr::printokr()
{
    cout<<"Радиус="<<r<<endl;
    cout<<"Площадь="<<S<<endl;
    cout<<"Длина="<<C<<endl;
}
 
class cil : public okr
{
protected:
    float V,h,Sb,Sp;
public:
    float seth(float H);
    float vichV();
    void printcil();
    float vichSb();
    float vichSp();
};
 
float cil::seth(float H)
{
    h=H;
    return h;
}
float cil::vichV ()
{
    V=S*h;
    return V;
}
float cil::vichSb ()
{
    Sb=C*h;
    return Sb;
}
float cil::vichSp ()
{
    Sp=S+Sb;
    return Sp;
}
void cil::printcil()
{
    cout<<"Информация об основании цилиндра:"<<endl;
    okr::printokr();
    cout<<"Высота цилиндра="<<h<<endl;
    cout<<"Объем цилиндра="<<V<<endl;
    cout<<"Площадь боковой поверхности цилиндра="<<Sb<<endl;
    cout<<"Полная площадь цилиндра="<<Sp<<endl;
}
 
void menu()
{
    cout<<"Меню:"<<endl;
    cout<<"0 - Выход"<<endl;
    cout<<"1 - Вводить вручную"<<endl;
    cout<<"2 - Считывать из файла"<<endl;
}
 
void main ()
{
    setlocale (LC_ALL, "rus");
    float R,H;
    int k;
    cil ci;
    menu();
    cin>>k;
    switch (k)
case 0:break;
case 1:
    cout<<"1 - Работа с окружностью"<<endl;
    cout<<"2 - Работа с цилиндром"<<endl;
    cout<<"0 - Выход"<<endl;
    cin>>k;
    switch (k)
case 1:
    {
        cout<<"Введите радиус окружности"<<endl;
        cin>>R;
        ci.setr(R);
        ci.vichS();
        ci.vichC();
        ci.printokr();
        break;
    }
case 2:
    {
        cout<<"Введите высоту цилиндра"<<endl;
        cin>>H;
        ci.seth(H);
        ci.vichV();
        ci.vichSb();
        ci.vichSp();
        ci.printcil();
        break;
    }
case 2:
 
default: cout<<"Некорректное значение пункта меню"<<endl; break;
    system ("pause"); 
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru