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

Operator>> - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Сгруппировать элементы массива http://www.cyberforum.ru/cpp-beginners/thread714931.html
Сгруппировать положительные элементы в начале, а отрицательные в конце массива без сохранения порядка в каждой группе за O(N) операций.спасибо заранее)))))
C++ Из одного файла данных получить два массива (один с числами, другой - с буквами) Имеется файл данных, где первая колонка - буквы, а остальные три колонки - числа. Надо записать буквы в один массив, а числа - в другой (желательно, чтобы матрица чисел имела тот же вид, что и в .dat файле). В программировании я полный ноль (ну то есть совсем без палочки), так что не знаю, как быть. Прочитала, что есть такая штука, как isalpha (а ещё есть isdigit), но как их применить? ... http://www.cyberforum.ru/cpp-beginners/thread714914.html
Напечатать те слова, которые встречаются в каждом из двух заданных предложений C++
#include <iostream> #include <conio.h> #include <locale> using namespace std; int main() { char *tempSlova1 = new char; char *tempSlova2 = new char; char *myString1 = new char;
C++ Типы файлов для сохранения текста
Есть такая задача:программа будет испольнять функции дневника, но только надо так, чтобы информацию из файла, в который все будет записываться, невозможно было получить сторонними программами. Можно ли такой размер текста записывать в бинарный файл?Или посоветуйте какой то другой формат файла.
C++ Время выполнения программы равно нулю http://www.cyberforum.ru/cpp-beginners/thread714884.html
#include <stdio.h> #include <stdlib.h> #include <time.h> int main() { clock_t start, end; float i; start = clock();
C++ Задать массив N из букв Помогите, пожалуйста, как написать в с++ программу, которая задаёт массив N из букв (а не цифр, по идеи, надо задавать тип char). и чтобы при вводе "А" на экран выдавалось "1", при "В" - "2", при "С" - "3". Спасибо зараннее. подробнее

Показать сообщение отдельно
Lopster92
3 / 3 / 0
Регистрация: 25.12.2009
Сообщений: 49

Operator>> - C++

01.12.2012, 02:07. Просмотров 514. Ответов 6
Метки (Все метки)

Привет, всем!!! У меня следующая проблема: при использовании operator>> внутри цикла while, т.е while(operator >> variable), выполняется только первая команда функции operator>> и, кроме того, еще и зацикливается на ней.

Вот мой злючий код с результатами вывода. Подскажите че не так позязя:-)

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
#ifndef COMPLEX0_H_
#define COMPLEX0_H_
#include <iostream>
 
class Complex {
private:
    double real;
    double im;
public:
    Complex();
    Complex(double r, double i = 0);
    ~Complex();
 
    Complex operator+(const Complex & cx) const;
    Complex operator-(const Complex & cx) const;
    Complex operator*(const Complex & cx) const;
 
    Complex operator*(const double mult) const;
    friend Complex operator*(const double mult, const Complex & cx);
 
    Complex operator~() const;
 
    friend std::ostream & operator<<(std::ostream & os, const Complex & cx);
    friend std::istream & operator>>(std::istream & is, const Complex & cx);
};
 
 
 
#endif /* COMPLEX0_H_ */
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
#include "complex0.h"
 
Complex::Complex() {
    real = im = 0;
}
 
Complex::Complex(double r, double i) {
    real = r;
    im = i;
}
 
Complex::~Complex() {}
 
Complex Complex::operator+(const Complex & cx) const {
    return Complex(real + cx.real, im + cx.im);
}
 
Complex Complex::operator-(const Complex & cx) const {
    return Complex(real - cx.real, im - cx.im);
}
 
Complex Complex::operator*(const Complex & cx) const {
    return Complex(real * cx.real - im * cx.im, real * cx.im + im * cx.real);
}
 
Complex Complex::operator*(const double mult) const {
    return Complex(real * mult, im * mult);
}
Complex operator*(const double mult, const Complex & cx) {
    return cx * mult;
}
 
Complex Complex::operator~() const {
    return Complex(real, -im);
}
 
 
std::ostream & operator<<(std::ostream & os, const Complex & cx) {
    os << "(" << cx.real << ", " << cx.im << ") ";
    return os;
}
 
std::istream & operator>>(std::istream & is, const Complex & cx) {
    std::cout << "действительная часть: ";
    if (is >> cx.real) {
        std::cout << "мнимая часть: ";
        is >> cx.im;
    }
    return is;
}
 
#if 0
std::istream & operator>>(std::istream & is, const Complex & cx) {
    std::cout << "действительная часть: ";
    //std::getline(is, cx.real);
    is >> cx.real;
    std::cout << std::endl <<"мнимая часть: ";
    is >> cx.im;
    return is;
}
#endif
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include "complex0.h"
 
int main () {
    Complex a(3.0, 4.0);
    Complex c;
 
    std::cout << "Введите комплексное число (для выхода q): " << std::endl;
    while(std::cin >> c) {
        std::cout << "'с' равно " << c << std::endl;
        std::cout << "Сопряжение 'с' равно: " << c << std::endl;
        std::cout << "'a' равно " << a << '\n';
 
        std::cout << "a + c равно " << a + c << std::endl;
        std::cout << "a - c равно " << a - c << std::endl;
        std::cout << "a * c равно " << a * c << std::endl;
        std::cout << "2 * c равно " << 2 * c << std::endl;
        std::cout << "Введите комплексное число (для выхода q): " << std::endl;
    }
    std::cout << "Готово!!!" << std::endl;
    return 0;
}
Вывод:
действительная часть: действительная часть: действительная часть: действительная часть: действительная часть: действительная часть: действительная часть: действительная часть: действительная часть: действительная часть: действительная часть: действительная часть: действительная часть: действительная часть:
.......................т.д.............................................
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru