Pagini: [1]   În jos
  Imprimă  
Ajutor Subiect: Culaore text  (Citit de 2775 ori)
0 Utilizatori şi 1 Vizitator pe acest subiect.
Andrey13l
Strain


Karma: 1
Deconectat Deconectat

Mesaje: 3



Vezi Profilul
« : Noiembrie 09, 2012, 23:18:55 »

Stiu ca nu este chiar cel mai eficient algoritm si ar putea fi facut mult mai usor.
doresc ca textul de dupa "text aparat" sa fie alta culoare dar nu si textul de dupa cum ar fi "introduceti sirul".




Cod:
#include <iostream.h>
#ifdef WIN32
#include <windows.h>
#endif
#include <string.h>
using namespace  std;

char schimbare(char r[100])
{
int i=0,j;

j=strlen(r);
while (i<j)
{
if (r[i]=='a')
{
           #ifdef WIN32
   HANDLE hstdo;
   hstdo = GetStdHandle(STD_OUTPUT_HANDLE);
   SetConsoleTextAttribute(hstdo, FOREGROUND_GREEN|FOREGROUND_INTENSITY);
           #endif
   cout<<'T';
}
if (r[i]=='b')
cout<<'U';
if (r[i]=='c')
cout<<'V';
if (r[i]=='d')
cout<<'W';
if (r[i]=='e')
cout<<'X';
if (r[i]=='f')
cout<<'Y';
if (r[i]=='g')
cout<<'Z';
if (r[i]=='h')
cout<<'1';
if (r[i]=='i')
cout<<'2';
if (r[i]=='j')
cout<<'3';
if (r[i]=='k')
cout<<'4';
if (r[i]=='l')
cout<<'5';
if (r[i]=='m')
cout<<'6';
if (r[i]=='n')
cout<<'7';
if (r[i]=='o')
cout<<'8';
if (r[i]=='p')
cout<<'9';
if (r[i]=='q')
cout<<'0';
if (r[i]=='r')
cout<<'.';
if (r[i]=='s')
cout<<'-';
if (r[i]=='t')
cout<<'A';
if (r[i]=='u')
cout<<'B';
if (r[i]=='v')
cout<<'C';
if (r[i]=='w')
cout<<'D';
if (r[i]=='x')
cout<<'E';
if (r[i]=='y')
cout<<'F';
if (r[i]=='z')
cout<<'G';
if (r[i]=='1')
cout<<'H';
if (r[i]=='2')
cout<<'I';
if (r[i]=='3')
cout<<'J';
if (r[i]=='4')
cout<<'K';
if (r[i]=='5')
cout<<'L';
if (r[i]=='6')
cout<<'M';
if (r[i]=='7')
cout<<'N';
if (r[i]=='8')
cout<<'O';
if (r[i]=='9')
cout<<'P';
if (r[i]=='0')
cout<<'Q';
if (r[i]=='.')
cout<<'R';
if (r[i]=='-')
cout<<'S';
if (r[i]==' ')
cout<<'_';
i++;
}
}

int main()
{
int i=0;
char r[100];
cout<<"Introduceti sirul: ";
    cin.get(r,100);
do
{
    if (strlen(r)>=11)
{
cout<<"Sirul este prea lung!"<<endl<<"Reintroduceti sirul: ";
cin.get();
cin.get(r,100);
}
else
{
    cout<<"Text aparat("<<(strlen(r))<<" caractere): ";
schimbare(r);
cout<<endl;
cout<<"Introduceti sirul: ";
cin.get();
    cin.get(r,100);
}
}
while(r[0]!='*');
}

Multumesc anticipat!
Memorat
PlayLikeNeverB4
Nu mai tace
*****

Karma: 212
Deconectat Deconectat

Mesaje: 721



Vezi Profilul
« Răspunde #1 : Noiembrie 10, 2012, 11:09:11 »

La sfarsitul functiei schimbare() schimbi la loc culoarea in cea default.
Memorat
Andrey13l
Strain


Karma: 1
Deconectat Deconectat

Mesaje: 3



Vezi Profilul
« Răspunde #2 : Noiembrie 10, 2012, 12:59:09 »

Ok mersi dar cum resetez la culoare defeault faza de schimbare de culoare am gasit-o pe net!
Memorat
PlayLikeNeverB4
Nu mai tace
*****

Karma: 212
Deconectat Deconectat

Mesaje: 721



Vezi Profilul
« Răspunde #3 : Noiembrie 10, 2012, 13:38:09 »

Faci aceeasi chestie ca si cand transformi in verde, doar ca apelezi cu FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_BLUE | FOREGROUND_INTENSITY
Memorat
Andrey13l
Strain


Karma: 1
Deconectat Deconectat

Mesaje: 3



Vezi Profilul
« Răspunde #4 : Noiembrie 10, 2012, 16:47:48 »

mersi mult a mers
Memorat
Pagini: [1]   În sus
  Imprimă  
 
Schimbă forumul:  

Powered by SMF 1.1.19 | SMF © 2006-2013, Simple Machines