Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: C++: Keskiarvojuttuu...

Sivun loppuun

Jix [29.01.2007 19:24:32]

#

Njoo. Toivottavasti ei tule heti mitään nuubittelua ;) Eli minulla olisi aika ihmeellinen ongelma, sillä kun suoritan seuraavan ohjelman niin se antaa tulokseksi jonkun aivan eri luvun kuin pitäisi. Esim. jos asetan 6,7 niin se antaa vastaukseksi 3. Tässä koodi:

#include <iostream.h>

double Keskiarvo(double oma1, double oma2);
int main()
{
    double oma1=0,oma2=0;
    cout << "\nAseta kaksi lukua (muoto: a,b): ";
    cin >> oma1,oma2;
    cout << Keskiarvo(oma1, oma2) << "\n";
}
double Keskiarvo(double oma1, double oma2)
{
       double tulos=0;
       tulos=(oma1+oma2)/2;
       return tulos;
}

Tästä hämmentyneenä päätin jättää funktioharjoitteluni hetkeksi ja tein tuon saman pelkässä pääfunktiossa:

#include <iostream.h>

int main()
{
    double luku1,luku2,vastaus;
    cout << "Anna kaksi lukua: ";
    cin >> luku1,luku2;
    vastaus=(luku1+luku2)/2;
    cout << vastaus;

    return 0;
}

Mutta sama vastaus. Ihmetyttää...

Metabolix [29.01.2007 19:30:56]

#

Tutki ja opi:

#include <iostream>
using namespace std;

double Keskiarvo(double oma1, double oma2);
int main()
{
    double oma1, oma2; // Ei tarvinne alustaa
    cout << "Anna kaksi lukua (muoto: 12.34 56.78): "; // Pilkku vain vaikeuttaisi asioita
    if (cin >> oma1 >> oma2) { // Tarkistetaan samalla kertaa, onnistuiko. Mitään pilkkua ei muuttujien väliin voi noin laittaa.
        cout << Keskiarvo(oma1, oma2) << endl;
    } else {
        cout << "Virhe!" << endl;
    }
    return 0;
}

double Keskiarvo(double oma1, double oma2)
{
    return (oma1 + oma2) / 2:
}

Antti Laaksonen [29.01.2007 19:31:10]

#

Vika on lukujen luvussa. Tässä korjaus:

cin >> luku1 >> luku2

kooderi [30.01.2007 17:21:54]

#

Jaat kahden doublen summan kokonaisluvulla. Kokeile näin.

double Keskiarvo(double oma1, double oma2)
{
    return (oma1 + oma2) / 2.:
}

koo [31.01.2007 00:36:10]

#

kooderi kirjoitti:

Jaat kahden doublen summan kokonaisluvulla.

... jolloin tulos on double. Haloo?

tn [31.01.2007 08:59:58]

#

O_O Häviääkö täältä viestejä itsekseen, vai alkaako dementia vain iskeä? Luulin kirjoittaneeni samasta asiasta ennen koo:ta, mutta eipä enää näy viestiä missään. Vai oliko viestini niin asiaton, että se täytyi sensuroida kokonaan... ;)

T.M. [31.01.2007 09:16:48]

#

Joo, joskus modet poistaa viestejä huvikseen ilman syytä. Ei hyvä.

Antti Laaksonen [31.01.2007 09:32:50]

#

tn kirjoitti:

Luulin kirjoittaneeni samasta asiasta ennen koo:ta, mutta eipä enää näy viestiä missään.

Viestisi poistosta näkyy merkintä keskustelun logeissa, joten ilmeisesti jollekin moderaattorille on sattunut valitettava erehdys. Selvitän asiaa ja koetan järjestää viestisi takaisin.

tn kirjoitti:

Vai oliko viestini niin asiaton, että se täytyi sensuroida kokonaan... ;)

Olet yksi Ohjelmointiputkan asiallisimmista keskustelijoista.

tn [31.01.2007 11:45:11]

#

Antti Laaksonen kirjoitti:

tn kirjoitti:

Luulin kirjoittaneeni samasta asiasta ennen koo:ta, mutta eipä enää näy viestiä missään.

Viestisi poistosta näkyy merkintä keskustelun logeissa, joten ilmeisesti jollekin moderaattorille on sattunut valitettava erehdys. Selvitän asiaa ja koetan järjestää viestisi takaisin.

No eipä tuolla niin ole väliä, vaikka viesti jäisi palauttamatta. Sama asiasisältö siinä kuitenkin oli kuin koo:nkin viestissä, vähän pidemmin selitettynä vain.

Eikös muuten esimerkiksi tällaisten tapausten varalle (ja muutenkin) olisi järkevää, ettei viestin poistaminen poistaisi viestiä kokonaan, vaan asettaisi vaan jonkin "poistettu"-lipun päälle. Vai johtuuko viestin palauttamisen vaikeus jostain muusta?

Menee vähän aiheesta ohi, mutta eiköhän alkuperäisen ongelman ratkaisu tullut kuitenkin selväksi.

Metabolix [31.01.2007 12:53:15]

#

Antti Laaksonen kirjoitti:

tn kirjoitti:

Luulin kirjoittaneeni samasta asiasta ennen koo:ta, mutta eipä enää näy viestiä missään.

Viestisi poistosta näkyy merkintä keskustelun logeissa

Hienoa, minuakin kiinnostaisi. ^^ Ehdin nimittäin vastata siihen, mutta se olikin sillä aikaa kadonnut, joten poistin sitten vastaukseni... (Olisiko tuota lokia ja palautusta mahdollista laittaa moderaattoreidenkin käyttöön? Jos vaikka joskus tosiaan sattuu vahinkoja.)


Sivun alkuun

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta