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
APUA!
Ohjelmanikkari
181077
0Äänestä
Muut lukivat myös
Odottaa vastausta
Näihin keskusteluihin ei ole vielä vastattu. Ole ensimmäinen.
Vastaukset 18
Vanhimmat
sisään vektoriin alkaen alusta, ja sitten purat vektorin alkaen lopusta.
Tämä on idea, koodin voit kirjoittaa itse.
-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
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
#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ä. :)
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?
//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
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
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?
-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ä.
-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...!
#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