string , zwracanie wartosci

0

case 1: std::cout<<"Wybrale\230 wiadomo\230\206 numer jeden."<<std::endl;
{
std::string strMMSI;
std::cout<<"Podaj sw\242j MMSI (kod 9-cyfrowy):";
std::cin>>strMMSI;
std::cout<<"Twoje MMSI to:"<<(strMMSI,1,9)<<"."<<std::endl;
getch();
}

moze mi ktos powiedziec dlaczego wprowadzony ten kod mmsi zawsze zwraca mi 9?:S chcialbym zeby zwracal mi 9 pierwszy podanych cyferek. gdzie mam blad!! dzieki z gory za pomoc

0

a co to niby jest
(strMMSI,1,9)
? może tam jakieś substr miało być przed tym? o_O
A zwraca 9 bo operator przecinka tak działa po prostu ;] cout<< dostaje tylko ostatni (skrajny prawy) argument.

0

wyczytalem ze pierwsza liczba po przecinku to nr litery od ktorej zacznie sie wyswietlanie, a druga to liczba znakow wyswietlonych:P

0
alwayslags napisał(a)

wyczytalem ze pierwsza liczba po przecinku to nr litery od ktorej zacznie sie wyswietlanie, a druga to liczba znakow wyswietlonych:P

Tak w python'ie na listach :D

W Twoim przypadku to o czym Shalom napisal, czyli substring:

std::cout << strMMSI.substr(0, 8) << std::endl;
0

witam, dzisiaj mam juz nowy problem, chce napisac funkcje fdokladnosc=sqrt((pow(fdokladnosc1,2)+pow(fdokladnosc2,2))) jednak program caly czas mi wywala sie w ktoryms miejscu, nie wiem czy cos zle mam zapisane czy nie:(

                {
        void PA (int nDokladnosc, double nDokladnosc1,double nDokladnosc2);
            {
                int fDokladnosc1;
                std::cout<<"Podaj mo\276liwy b\210\245d pomiaru szeroko\230ci geograficznej(zakres podawany w metrach):"<<std::endl;
                std::cin>>fDokladnosc1;
                int fDokladnosc2;
                std::cout<<"Podaj mo\276liwy b\210\245d pomiaru d\210ugo230ci geograficznej(zakres podawany w metrach):"<<std::endl;
                std::cin>>fDokladnosc2;

                int fDokladnosc= sqrt(pow(fDokladnosc1,2) + pow(fDokladnosc2,2));
                if
                    (fDokladnosc<=10)
                {
                    std::cout<<"Dok\210adno\230\206 ma\210a, wsp\242\210czynnik PA= 1"<<std::endl;
                    getch();
                }

                else
                {
                    std::cout<<"Dok\210adno\230\206 du\276a, wsp\242\210czynnik PA= 0"<<std::endl;
                getch();
            }

kod tej czesci programiku=]
prosze o pomoc!

0

Po pierwsze:
http://www.cplusplus.com/reference/clibrary/cmath/sqrt/
więc musisz rzutować.
A po drugie gdzie Ci się wywala, debugera nie masz? :(

0
alwayss napisał(a)

wywala mi:

Error 5 error C2668: 'pow' : ambiguous call to overloaded function

ok juz poprawione,:) niepomyslalem o tym ze int to l. calkowite, wystarczylo zmienic na float=]

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