Wczytywanie zmiennnych double z sekwencji znaków

0

Mam taką daną :

 
double modul,kat;

(2.56e^i8.78)

Wczytuje jeden znak, nawias '(', teraz chcę wczytać do zmiennej modul liczbę aż do napotkania znaku e. Mógłbym zrobić to getline(modul,stdin,'e'), ale przypuszczam, że istnieją bardziej eleganckie metody. Potem wczytam sobie e,^,i .. no i znowu kolejną zmienną aż do nawiasu )

0

(2e^i89) -> dla takich danych wyświetla mi:

2
-1.03808e-41

 #include <iostream>
#include <cstdlib>
#include <cstdio>
using namespace std;

int main(){

  double mod,kat;
scanf("(%lfe^i%lf) ",&mod,&kat);

 cout<<mod<<endl;
cout<<kat;
}
0
class LiczbaZespolona
{
    double Kat,Modul;
};

istream & operator >> ( istream & input, LiczbaZespolona & Z )
{
    char LZ[100];
    input.getline(LZ,99); // ? 

    return input;
}

Tutaj scanfem nie podziałam zbyt wiele.

1 użytkowników online, w tym zalogowanych: 0, gości: 1