Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

potrzebna pomoc

Ostatnio zmodyfikowano 2009-06-03 18:08
Autor Wiadomość
kwas27
Temat założony przez niniejszego użytkownika
potrzebna pomoc
» 2009-06-03 17:08:15
potrzebuje pomocy przy programie ktory wam przedstawiam na dole...chodzi mi o cos takiego zeby program ktory sie wykonuje mianowicie ulozenia lecacych kodow asci z ukosnego chcialbym zrobic na pionowy"nie wiem czy to jest dla was zrozumialem"ale jak odpalicie plik to bedziecie wiedziec o co chodzi...

C/C++
#include <iostream>
#include <windows.h>
#include <cstdlib>
#include <cstdio>

using namespace std;

#define SRODEK_EKRANU 13
#define PREDKOSC 5

inline void wyswietl( char * tablica, bool czesc )
{
    int i = 0;
    if( czesc == false )
    {
        for( i = 0; i < SRODEK_EKRANU; i++ )
        {
            if( tablica[ i ] != 1 )
                 cout << tablica[ i ];
            else
                 cout << "   ";
           
        }
    }
    else if( czesc == true )
    {
        for( i = 0; i < SRODEK_EKRANU; i++ )
        {
            cout << "   ";
        }
       
        for( i = SRODEK_EKRANU; i < strlen( tablica ); i++ )
        {
            if( tablica[ i ] != 1 )
                 cout << tablica[ i ];
            else
                 cout << "";
           
        }
       
    }
}

inline void przesun( char * tablica, int elem_start, int elem_koniec )
{
    for( int i = elem_koniec; i >= elem_start; i-- )
    {
        tablica[ i + 1 ] = tablica[ i ];
        tablica[ i ] = 1;
    }
}

int main()
{
    // 80 x 25
    char znaki[] = "ZYXWVUTSRQPONMLKJIHGFEDCBA)(*&^%$#@!";
    int ilosc_znakow = strlen( znaki );
    int rozmiar_bufforu = ilosc_znakow + SRODEK_EKRANU + 1;
   
    char * tablica = new char[ rozmiar_bufforu ];
    for( int poz = 0; poz < rozmiar_bufforu - 1; poz++ )
         tablica[ poz ] = 1;
   
    tablica[ rozmiar_bufforu - 1 ] = 0;
   
    for( int i = 1; i <= ilosc_znakow; i++ )
    {
        tablica[ 0 ] = znaki[ ilosc_znakow - i ];
        for( int j = 0; j < SRODEK_EKRANU - 1; j++ )
        {
            system( "cls" );
            int k;
            przesun( tablica, j, j );
            for( k = 0; k < j; k++ )
                 cout << endl;
           
            if( j != SRODEK_EKRANU - 2 )
                 wyswietl( tablica, false );
           
            for( k = 2; k < SRODEK_EKRANU - j; k++ )
            {
                cout << endl;
            }
            Sleep( PREDKOSC );
            if( j == SRODEK_EKRANU - 2 )
                 przesun( tablica, j,( j + i ) );
           
            wyswietl( tablica, true );
           
        }
    }
    cout << endl;
    system( "pause" );
    return 0;
}
P-7405
DejaVu
» 2009-06-03 17:24:28
Szczerze mówiąc z Twojego zdania totalnie nic nie wynika :)
P-7407
kwas27
Temat założony przez niniejszego użytkownika
chodzi o to
» 2009-06-03 17:47:48
chodzi o to ze po ekranie poruszaja sie kody asci i zatrzymuja sie w polowie ekranu i do nastpenego kodu dochodzi nastepny jest to tak zrobione ze kody leca po ukosie a ja chce zrobic zeby bylo w poziomie lub w pionie...
P-7410
DejaVu
» 2009-06-03 18:08:17
C/C++
#include <iostream>
#include <conio.h>
#include <console.ddt>

using namespace std;
using namespace ddt::console;

int main()
{
    string wyswietl = "to jest napis";
    string napis = "";
    char znak = 0;
    int x, y;
   
    while( !kbhit() )
    {
        clrscr();
        gotoxy( 40 - napis.length() / 2, 13 );
        cout << napis;
        if( znak != 0 )
        {
            gotoxy( x, y );
            cout << znak;
           
            if( x < 40 - napis.length() / 2 )
            {
                x++;
            } else
            if( y < 13 )
            {
                y++;
            } else
            {
                napis = znak + napis;
                znak = 0;
            } //else
        } //if
        Sleep( 10 );
        if( znak == 0 && wyswietl.length() > 0 )
        {
            do
            {
                znak = wyswietl[ wyswietl.length() - 1 ];
                wyswietl = wyswietl.substr( 0, wyswietl.length() - 1 );
                x = 1;
                y = 1;
                if( znak == ' ' ) napis = znak + napis;
               
            } while( znak == ' ' && wyswietl.length() > 0 );
           
        } //if
       
    } //while
   
    return 0;
}
P-7412
« 1 »
  Strona 1 z 1