Pohyblivý text v C

Programovacie jazyky, rady, poradňa...
Optimus9991
Novice
Novice
Príspevky: 7
Registrovaný: 28 nov 2013, 19:49

Pohyblivý text v C

Príspevok od používateľa Optimus9991 »

Dobrý deň. Chcel by som sa opýtať, že ako by sa dal spraviť pohyblivý text v jazyku C. Text by sa mal pohybovať zľava doprava.
harrison314
Hardcore addict
Hardcore addict
Používateľov profilový obrázok
Príspevky: 8219
Registrovaný: 27 máj 2009, 20:42
Bydlisko: Bratislava
Kontaktovať používateľa:

Re: Pohyblivý text v C

Príspevok od používateľa harrison314 »

Ano dal, vzdy vypises text a pred nim das v i-tej iteracii pred neho i medzier (dufam ze vies pouzit for), ale riadok neukoncis \n ale \r, tento znak vrati kurzor na zaciatok riadku.

//autoeditácia príspevku (28 Nov 2013, 20:39)
cca takto

Kód: Vybrať všetko

   #ifdef __unix__
     #include<unistd.h>
   #else
    #include<windows.h>
#endif

.
.
.

char buffer[50];
printf("Zadaj text: ");
gets(buffer);
int i,j;
for(i=0;i<8;i++)
{
   printf("\r");
   for(j=0;j<i;j++) printf(" ");
   printf("%s",buffer);
   #ifdef __unix__
     usleep(1000);
   #else
    sleep(1000);
#endif
}

Optimus9991
Novice
Novice
Príspevky: 7
Registrovaný: 28 nov 2013, 19:49

Re: Pohyblivý text v C

Príspevok od používateľa Optimus9991 »

Ďakujem za pomoc. Veľmi mi to pomohlo.

//autoeditácia príspevku (04 Dec 2013, 19:46)
Este by som sa chcel spytat ze ako by sa dalo spravit aby program skocil aj na 3. riadok a neostal zacykleny v tom druhom.

Kód: Vybrať všetko

#include<stdio.h>
#include<windows.h>


int main()
{
    int i,j,k,x=1;

    for(k=0;k<5;k++)
    {
        for(i=0;i<10;i++)
        {
            for(j=0;j<i;j++)
            {
                printf(" ");
            }
            printf("Text\r");
            Sleep(100);
            if(i==9)
                system("cls");
            }
        printf("\n");
    }
    return 0;
}
BX
Addict
Addict
Používateľov profilový obrázok
Príspevky: 4572
Registrovaný: 10 jan 2008, 15:30

Re: Pohyblivý text v C

Príspevok od používateľa BX »

Aký treti riadok? Akom druhom?
Optimus9991
Novice
Novice
Príspevky: 7
Registrovaný: 28 nov 2013, 19:49

Re: Pohyblivý text v C

Príspevok od používateľa Optimus9991 »

Ked sa program spusti tak prvy riadok sa text vypisuje, potom preskoci na druhy a ostane sa vypisovat v druhom riadku zlava do prava. Potreboval by som to aby preskocil na treti riadok pricom tie predosle 2 by ostali ciste.
BX
Addict
Addict
Používateľov profilový obrázok
Príspevky: 4572
Registrovaný: 10 jan 2008, 15:30

Re: Pohyblivý text v C

Príspevok od používateľa BX »

Jáj, no to je kvôli system("cls"). To ti vyčistí obrazovku a kurzor vráti na pôvodnú pozíciu (vľavo hore). Musíš si napísať funkciu, ktorá zmaže len jeden riadok (aby si ostal na tom riadku, kde si), a ňou nahradíš system(cls)
Optimus9991
Novice
Novice
Príspevky: 7
Registrovaný: 28 nov 2013, 19:49

Re: Pohyblivý text v C

Príspevok od používateľa Optimus9991 »

Aj som si myslel ze to bude kvoli tomu. Vedel by si mi s tou funkciou, ktora by to nahradila pomoct?
BX
Addict
Addict
Používateľov profilový obrázok
Príspevky: 4572
Registrovaný: 10 jan 2008, 15:30

Re: Pohyblivý text v C

Príspevok od používateľa BX »

Proste tam použiješ \r (to už vieš, na čo slúži) a vypíšeš kopu medzier (v podstate ti stačí 10, ďalej s textom nejdeš) A cyklus for vieš tiež použiť.
A nemusí to byť nutne funkcia, môžeš to dať priamo do kódu.
Optimus9991
Novice
Novice
Príspevky: 7
Registrovaný: 28 nov 2013, 19:49

Re: Pohyblivý text v C

Príspevok od používateľa Optimus9991 »

Citim sa ako somar ked mi to nedopaluje :D ale ak by ta to neobtazovalo tak by som ta poprosil ci by si mi to sem hodil.
BX
Addict
Addict
Používateľov profilový obrázok
Príspevky: 4572
Registrovaný: 10 jan 2008, 15:30

Re: Pohyblivý text v C

Príspevok od používateľa BX »

Tak sa cíť ako somár ešte tak pol hoďku a prídi na to ;)
Optimus9991
Novice
Novice
Príspevky: 7
Registrovaný: 28 nov 2013, 19:49

Re: Pohyblivý text v C

Príspevok od používateľa Optimus9991 »

Dik :D ale ocenujem tento pristup. Este sa chcem spytat ci to mam hodit do toho IF.
BX
Addict
Addict
Používateľov profilový obrázok
Príspevky: 4572
Registrovaný: 10 jan 2008, 15:30

Re: Pohyblivý text v C

Príspevok od používateľa BX »

No to by si mal tiež vedieť. Ale keď píšem, že nahradiť funkciu system, tak by si mal asi nahradiť funkciu system. Mažeš to v správnom okamihu, len zlým spôsobom.
Optimus9991
Novice
Novice
Príspevky: 7
Registrovaný: 28 nov 2013, 19:49

Re: Pohyblivý text v C

Príspevok od používateľa Optimus9991 »

Ok dik.
Napísať odpoveď