APUA!

Voisiko joku kertoa, miten tehdä c-ohjelma johon voi syöttää numeroita ja se kääntää ne sitten päin vastaiseen järjestykseen. esim. 1,2,3,4 -> 4,3,2,1
181077
Äänestä

Muut lukivat myös

Vastaukset 18

Vanhimmat

sisään vektoriin alkaen alusta, ja sitten purat vektorin alkaen lopusta.
Tämä on idea, koodin voit kirjoittaa itse.

Äänestä

-Siinä jotakin!
-Syötön tau1:een osaat varmaan tehdä.

int main(void)
{
int tau1[]={10,20,30,40};//Tämä käänteiseksi
int tau2[4]={0};//Tähän käännetään
int i=0;//Laskuri tau2:een
int j=4;//Käänteislaskuri

for(i=0,j

Äänestä
  • Olen kyllä täysin aloittelija vielä... Miten sitten jos haluan tehä saman satunnaisilla sanoilla, eli käyttäjä antaa n määrän sanoja ja ne pitäisi saada käännettyä nurinkuriseen järjestykseen? esim. koira kissa karhu -> karhu kissa koira

    Äänestä

  • Ohjelmanikkari kirjoitti:

    Olen kyllä täysin aloittelija vielä... Miten sitten jos haluan tehä saman satunnaisilla sanoilla, eli käyttäjä antaa n määrän sanoja ja ne pitäisi saada käännettyä nurinkuriseen järjestykseen? esim. koira kissa karhu -> karhu kissa koira

    -Koeta saada pelaamaan.Näin se kuitenkin täällä pelaa c Builder 6
    -Kun ottaa #include :in pois niin ei toimi
    -Templatella toimii helpommin,mutta on parempi tehdä itse(ensin).

    #include
    #include
    #include
    #include

    using namespace std;

    int main(void)
    {
    int n1=3;//Sanat kpl
    string *tau1=new string[n1];
    string *tau2=new string[n1];

    tau1[0]="rehellisia????????????????";
    tau1[1]="ovat";
    tau1[2]="Poliitikot";

    int i=0;//Laskuri tau2:een
    int j=3;//Käänteislaskuri

    for(i=0,j

    Äänestä

  • Builder kirjoitti:

    -Koeta saada pelaamaan.Näin se kuitenkin täällä pelaa c Builder 6
    -Kun ottaa #include :in pois niin ei toimi
    -Templatella toimii helpommin,mutta on parempi tehdä itse(ensin).

    #include
    #include
    #include
    #include

    using namespace std;

    int main(void)
    {
    int n1=3;//Sanat kpl
    string *tau1=new string[n1];
    string *tau2=new string[n1];

    tau1[0]="rehellisia????????????????";
    tau1[1]="ovat";
    tau1[2]="Poliitikot";

    int i=0;//Laskuri tau2:een
    int j=3;//Käänteislaskuri

    for(i=0,j

    #include
    #include
    #include
    #include

    using namespace std;

    int main(void)
    {
    int n1=3;//Sanat kpl
    string *tau1=new string[n1];
    string *tau2=new string[n1];

    tau1[0]="rehellisia????????????????";
    tau1[1]="ovat";
    tau1[2]="Poliitikot";

    int i=0;//Laskuri tau2:een
    int j=n1;//Käänteislaskuri

    //n1 lisätty tänne
    for(i=0,j

    Äänestä

  • Builder kirjoitti:

    #include
    #include
    #include
    #include

    using namespace std;

    int main(void)
    {
    int n1=3;//Sanat kpl
    string *tau1=new string[n1];
    string *tau2=new string[n1];

    tau1[0]="rehellisia????????????????";
    tau1[1]="ovat";
    tau1[2]="Poliitikot";

    int i=0;//Laskuri tau2:een
    int j=n1;//Käänteislaskuri

    //n1 lisätty tänne
    for(i=0,j

    Käyttäjä antaa oikein pitkän lauseen -> lauseen pitkän oikein antaa käyttäjä. :)

    Äänestä

  • Ohjelmanikkari kirjoitti:

    Käyttäjä antaa oikein pitkän lauseen -> lauseen pitkän oikein antaa käyttäjä. :)

    Taulukko a[] olisi nyt sitten se joka käännetään toisinpäin.
    Tässä on näytetty vain kuinka sanat erotellaan toisistaan.

    #include
    #include
    #include
    #include

    using namespace std;
    int main( void )
    {
    //Koko-muuttujankin voi laskea ennakkoon
    //Tilaa on nyt sadalle sanalle
    int koko=100;
    //Allaolevan luet sisään.Se on käyttäjän syöttämä rivi
    char *b="Uuno Turhapuro. Spede Pasanen.";
    string *a=new string[koko];
    int sanat=0;
    char *p="";
    if(p)
    {
    p=strtok(b," ");
    a[sanat]=p;//Eka sana
    }
    do
    {
    p=strtok(NULL," ");//Muut sanat
    if(p)
    {
    a[sanat 1]=p;
    sanat ;
    }
    }while(p);
    for(int x=0;x

    Äänestä

  • Builder kirjoitti:

    Taulukko a[] olisi nyt sitten se joka käännetään toisinpäin.
    Tässä on näytetty vain kuinka sanat erotellaan toisistaan.

    #include
    #include
    #include
    #include

    using namespace std;
    int main( void )
    {
    //Koko-muuttujankin voi laskea ennakkoon
    //Tilaa on nyt sadalle sanalle
    int koko=100;
    //Allaolevan luet sisään.Se on käyttäjän syöttämä rivi
    char *b="Uuno Turhapuro. Spede Pasanen.";
    string *a=new string[koko];
    int sanat=0;
    char *p="";
    if(p)
    {
    p=strtok(b," ");
    a[sanat]=p;//Eka sana
    }
    do
    {
    p=strtok(NULL," ");//Muut sanat
    if(p)
    {
    a[sanat 1]=p;
    sanat ;
    }
    }while(p);
    for(int x=0;x

    En kyllä saa tuota ohjelmaani toimimaan sitten millään :( Mitähän tässä voi tehdä väärin?

    Äänestä

  • Ohjelmanikkari kirjoitti:

    En kyllä saa tuota ohjelmaani toimimaan sitten millään :( Mitähän tässä voi tehdä väärin?

    //Ohjelma poimii sanat syotteesta(space)
    //Tämä toimii ainakin minulla.
    //Syötetyt sanat käännetään päinvastaiseen järjestykseen
    //Kopioi tämä yksi yhteen ja kokeile!!
    //Tämä on tehty ennen saunakaljoja!!!


    #include
    #include
    #include
    #include
    #include

    using namespace std;
    int main( void )
    {
    //Koko-muuttujankin voi laskea ennakkoon
    //Tilaa on nyt sadalle sanalle
    int koko=100;

    char *b="";
    cout

    Äänestä

  • builder kirjoitti:

    //Ohjelma poimii sanat syotteesta(space)
    //Tämä toimii ainakin minulla.
    //Syötetyt sanat käännetään päinvastaiseen järjestykseen
    //Kopioi tämä yksi yhteen ja kokeile!!
    //Tämä on tehty ennen saunakaljoja!!!


    #include
    #include
    #include
    #include
    #include

    using namespace std;
    int main( void )
    {
    //Koko-muuttujankin voi laskea ennakkoon
    //Tilaa on nyt sadalle sanalle
    int koko=100;

    char *b="";
    cout

    Kääntäessä saan vaan errorin: condefs.h: No such file or directory

    Äänestä

  • builder kirjoitti:

    //Ohjelma poimii sanat syotteesta(space)
    //Tämä toimii ainakin minulla.
    //Syötetyt sanat käännetään päinvastaiseen järjestykseen
    //Kopioi tämä yksi yhteen ja kokeile!!
    //Tämä on tehty ennen saunakaljoja!!!


    #include
    #include
    #include
    #include
    #include

    using namespace std;
    int main( void )
    {
    //Koko-muuttujankin voi laskea ennakkoon
    //Tilaa on nyt sadalle sanalle
    int koko=100;

    char *b="";
    cout

    Miten tuo samainen ohjelma tulisi tehdä jos kyseessä on ihan puhdas C, ymärtääkseni tuossa on kyseessä C ??

    Äänestä

  • Ohjelmanikkari kirjoitti:

    Miten tuo samainen ohjelma tulisi tehdä jos kyseessä on ihan puhdas C, ymärtääkseni tuossa on kyseessä C ??

    -Siinä toimiva C-versio.En kyllä C:tä ole käyttänyt ja tuo esimerkki
    onkin vähän räpellyksen näköinen,mutta toimii(ainakin minulla).
    -Siitä aiemmasta esimerkistä voisi koittaa ottaa sen
    #include pois.
    Kokeile nyt ja jos toimii niin voit "vähän" jalostaa.

    #include
    #include
    #include
    #pragma hdrstop
    //---------------------------------------------------------------------------
    #pragma argsused
    int main(int argc, char* argv[])
    {
    char merkki;
    char puskuri[128];
    char *p="";
    char *tau1[10];//Tämä käännetään
    char *tau2[10];//tähän
    int sanat=0;
    int i=0,x;
    tau1[0]=NULL;
    tau2[0]=NULL;

    printf ("Anna merkkijono: \n");
    gets(puskuri);
    scanf (puskuri,"%s",merkki);

    p=strtok(puskuri," ");
    tau1[sanat]=p;
    do
    {
    p=strtok(NULL," ");//Muut sanat
    if(p)
    {
    tau1[sanat+1]=p;
    sanat++;
    }
    }while(p);

    printf("Taulukko kaannettyna\n");
    for(i=0;i

    Äänestä

  • Builder kirjoitti:

    -Siinä toimiva C-versio.En kyllä C:tä ole käyttänyt ja tuo esimerkki
    onkin vähän räpellyksen näköinen,mutta toimii(ainakin minulla).
    -Siitä aiemmasta esimerkistä voisi koittaa ottaa sen
    #include pois.
    Kokeile nyt ja jos toimii niin voit "vähän" jalostaa.

    #include
    #include
    #include
    #pragma hdrstop
    //---------------------------------------------------------------------------
    #pragma argsused
    int main(int argc, char* argv[])
    {
    char merkki;
    char puskuri[128];
    char *p="";
    char *tau1[10];//Tämä käännetään
    char *tau2[10];//tähän
    int sanat=0;
    int i=0,x;
    tau1[0]=NULL;
    tau2[0]=NULL;

    printf ("Anna merkkijono: \n");
    gets(puskuri);
    scanf (puskuri,"%s",merkki);

    p=strtok(puskuri," ");
    tau1[sanat]=p;
    do
    {
    p=strtok(NULL," ");//Muut sanat
    if(p)
    {
    tau1[sanat+1]=p;
    sanat++;
    }
    }while(p);

    printf("Taulukko kaannettyna\n");
    for(i=0;i

    Sitä scanf:ää ei tarvita - voit ottaa pois
    siihen liittyvät asiat.(ja pitääkin ottaa)

    Äänestä

  • Builder kirjoitti:

    Sitä scanf:ää ei tarvita - voit ottaa pois
    siihen liittyvät asiat.(ja pitääkin ottaa)

    Kiitoksia paljon tästä. Hyvä että jollain riittää motivaatiota neuvoa aloittelijoita. Tuo ohjelma tulostaa sanat tosin allekkain, pitäisi saada tulostumaan peräkkäin. Miten tämä tehdään?

    Äänestä

  • Ohjelmanikkari kirjoitti:

    Kiitoksia paljon tästä. Hyvä että jollain riittää motivaatiota neuvoa aloittelijoita. Tuo ohjelma tulostaa sanat tosin allekkain, pitäisi saada tulostumaan peräkkäin. Miten tämä tehdään?

    -Lisäksi tarpeeton scanf poistettu

    #include
    #include
    #include
    #pragma hdrstop
    //---------------------------------------------------------------------------
    #pragma argsused
    int main(int argc, char* argv[])
    {
    char puskuri[100];
    char *p="";
    char *tau1[10];//Tämä käännetään
    char *tau2[10];//tähän
    int sanat=0;
    int i=0,x;
    tau1[0]=NULL;
    tau2[0]=NULL;

    printf ("Anna merkkijono: \n");
    gets(puskuri);
    p=strtok(puskuri," ");//Eka sana
    tau1[sanat]=p;
    do
    {
    p=strtok(NULL," ");//Muut sanat
    if(p)
    {
    tau1[sanat 1]=p;
    sanat ;
    }
    }while(p);

    printf("\nTaulukko kaannettyna\n");
    for(i=0;i

    Äänestä

  • Builder kirjoitti:

    -Lisäksi tarpeeton scanf poistettu

    #include
    #include
    #include
    #pragma hdrstop
    //---------------------------------------------------------------------------
    #pragma argsused
    int main(int argc, char* argv[])
    {
    char puskuri[100];
    char *p="";
    char *tau1[10];//Tämä käännetään
    char *tau2[10];//tähän
    int sanat=0;
    int i=0,x;
    tau1[0]=NULL;
    tau2[0]=NULL;

    printf ("Anna merkkijono: \n");
    gets(puskuri);
    p=strtok(puskuri," ");//Eka sana
    tau1[sanat]=p;
    do
    {
    p=strtok(NULL," ");//Muut sanat
    if(p)
    {
    tau1[sanat 1]=p;
    sanat ;
    }
    }while(p);

    printf("\nTaulukko kaannettyna\n");
    for(i=0;i

    Kiitoksia vielä kerran ohjeista ja kärsivällisyydestä.

    Äänestä

  • Ohjelmanikkari kirjoitti:

    Kiitoksia vielä kerran ohjeista ja kärsivällisyydestä.

    -Hyvä kun saat hommat toimimaan ja tietokin karttuu siitä
    aikaa myöten.
    -On muuten mukavaa saada palautetta,koska se motivoi myöskin vastaustaen antamiseen.
    -Tällä palstalla näkyy kylläkin olevan henkilöitä,jotka mollaavat
    aloittelijan pystyyn tai istualleen,mutta eikö ole logiikkaa,ettei
    tarvitse vastata kenellekään jollei halua,ja jos haluaa niin miksi
    pitäisi antaa tarpeeton vastaus??Tietenkin oman vaatimattoman egon
    pönkitys.Heistä ei useimmista tule ohjelmoijia.
    Ohjelmointihan on pelkkää logiikkaa??
    -Voihan nuo vastauksien sävyt ja muodot perustella myöskin sillä,että
    sen "vapaan kasvatuksen" tulokset alkavat kumuloitua nillä main.
    -Menen jatkamaan saunomista ja kaljan juontia.

    -Jatkoja...!

    Äänestä

  • builder kirjoitti:

    //Ohjelma poimii sanat syotteesta(space)
    //Tämä toimii ainakin minulla.
    //Syötetyt sanat käännetään päinvastaiseen järjestykseen
    //Kopioi tämä yksi yhteen ja kokeile!!
    //Tämä on tehty ennen saunakaljoja!!!


    #include
    #include
    #include
    #include
    #include

    using namespace std;
    int main( void )
    {
    //Koko-muuttujankin voi laskea ennakkoon
    //Tilaa on nyt sadalle sanalle
    int koko=100;

    char *b="";
    cout

    #include
    #include
    #include
    //#include
    #pragma hdrstop
    //---------------------------------------------------------------------------
    #pragma argsused
    using namespace std;
    int main(int argc, char* argv[])
    {

    int koko=100;
    const int MAXCHARS=100;
    char b[MAXCHARS];

    cout

    Äänestä

Kommentoi aloitusta


Ohjelmanikkari kirjoitti:

Voisiko joku kertoa, miten tehdä c-ohjelma johon voi syöttää numeroita ja se kääntää ne sitten päin vastaiseen järjestykseen. esim. 1,2,3,4 -> 4,3,2,1

Anonyymi
5000

Ilmoita asiaton sisältö

  • Sisältää materiaalia, joka on loukkaavaa, herjaavaa, rasistista, uhkailevaa tai ahdistelevaa.

  • Materiaali sisältää nimiä, yhteystietoja tai muita henkilökohtaisia tietoja. Julkisuuden henkilöistä, julkisissa viroissa toimivista ihmisistä sekä yritysten vastuuhenkilöistä saa keskustella työhön liittyen. Myös yksityiselämään liittyvistä asioista voi keskustella siltä osin, kuin niistä on julkisesti kerrottu.

  • Sisältää lapsille haitallista tai heiltä kiellettyä materiaalia. Seksuaalinen sisältö on sallittua aiheeseen tarkoitetuilla palstoilla, joiden ikäraja on 18 vuotta.

  • Lainvastaista sisältöä voi olla mm. yksityiselämää loukkaavan tiedon levitys, kiihottaminen kansanryhmää vastaan, laiton uhkaaminen, alaikäisiin liittyvä seksuaalinen sisältö/grooming, petokset, identiteettivarkaudet, kunnianloukkaukset ja tekijänoikeusrikkomukset.

  • Sisältö ei liity palstan tai keskusteluketjun aiheeseen.

  • Viesti ei ole suomea tai ruotsia (pl. International Forums), se sisältää mainontaa, se sisältää tekijänoikeuksin suojattua materiaalia, se on massapostitus tai jokin muu syy.

Jaa keskustelu