Ir ao conteúdo

Posts recomendados

Postado
Em 15/03/2019 às 12:00, Marcela da Silva de Souza disse:

Ola boa noite, o que sao aqueles quadradinhos com os numeros passando? Meu cliente quer  que o programa pudesse identificar os numeros pares e ímpares e mostrar os numeros abaixo.

Mas ficou lindo o designer/laout!

 

 

Oi que variável eu posso usar p mostras so os ímpares e so os pares tipo separa los meu cliente vai fazer uma conta doida la no final com os resultados ai disse q ta faltando isso e que eu nao to entendendo o contexto dele  e eu queria saber o que sao os numeros nos quadradinhos help me!

 

  • Curtir 1
Postado

@Marcela da Silva de Souza     aqueles quadradinhos são o tempo de espera para ver o que está escrito na tela e se antes de chegar a zero você pressionar alguma tecla ele já dá continuidade no programa , e depois do saindo você pode rolar a tela para cima e ver que os números que você digitou estão lá e junto a eles as informações se são pares  ou ímpares  , assim se o primeiro dígito do número  é par está escrito  I    ou ímpar está escrito   P     e se o segundo dígito é par ou ímpar .

  • Curtir 1
Postado
Em 21/03/2019 às 21:01, devair1010 disse:

@Marcela da Silva de Souza     aqueles quadradinhos são o tempo de espera para ver o que está escrito na tela e se antes de chegar a zero você pressionar alguma tecla ele já dá continuidade no programa , e depois do saindo você pode rolar a tela para cima e ver que os números que você digitou estão lá e junto a eles as informações se são pares  ou ímpares  , assim se o primeiro dígito do número  é par está escrito  I    ou ímpar está escrito   P     e se o segundo dígito é par ou ímpar .

Boa noite eu gostaria  logo abaixo dessas funcao mostras lista de numeros ímpares e pares de forma separada somente adicionar mais essa funcao sem tirar nada na verdade o meu cliente pediu para ver quais que aparecem mais no resultado se sao ímpares ou pares, exemplo: Mostrar no resultado que a quantiade de numeros impares é  maior ou menor doque o de pares ou vice e versa. Depois mostrar os numeros caso o numero maior seja par, mostrar esses numeros os que mais se repetiram.

  • Obrigado 1
Postado

@Marcela da Silva de Souza      aqui tem essas funções e mais essa de mostrar os pares e ímpares :

 

#include <iostream>/* em c++ precisa desse include  */
#include <stdlib.h>
#include <math.h>
#include <conio.h>
#include <string>
#define Tm 8
#include <windows.h>
/*             0     1    2     3   4      5      6      7         8       */
typedef enum{BLACK,BLUE,GREEN,CYAN,RED,MAGENTA,BROWN,LIGHTGRAY,DARKGRAY,   /* nome das cores */
LIGHTBLUE,LIGHTGREEN,LIGHTCYAN,LIGHTRED,LIGHTMAGENTA,YELLOW,WHITE} COLORS;
/*  9         10         11        12        13         14    15           */

static int __BACKGROUND = 1/*BLACK*/;/*pode ser o numero ou o nome da cor*/
static int __FOREGROUND = LIGHTGRAY;

void textcolor (int letras, int fundo){/*para mudar a cor de fundo mude o background*/
    __FOREGROUND = letras;
    __BACKGROUND = fundo;
    SetConsoleTextAttribute (GetStdHandle (STD_OUTPUT_HANDLE),
    letras + (__BACKGROUND << 4));
}
                  /* y = linha de 0 a 24 , x = coluna de 0 a 80 */
void gotoxy(int x, int y){/*imprimir na linha e coluna desejada */
  COORD c;
  c.X = x;
  c.Y = y;
  SetConsoleCursorPosition (GetStdHandle(STD_OUTPUT_HANDLE), c);
}
int numeros[40]={15,16,14,1,30,14,17,31,17,17,14,4,4,4,
                 14,17,25,21,19,17,28,18,17,18,28,14,17,17,17,14,
                 0,0,0,0,0,1,2,4,0,16,};
int pausar(int r);
void sair(int u);
using namespace std;/* em c++ precisa de desse comando */
int main(){
    int vet[60],aux,num,flag,x,y,l,P,u;
    int i,j=0,resto,result,soma=0,total=0;
    int n= 8,numeros[4096],l0,l1,l2,l3;
    int dezenas[4] = {10,12,20,55};
    string p,ii;
    printf("Digite os numeros de 0 ate 99\n\n");
    do{
        do{
            flag=0;
            printf("Digite O %d%c N%cmero ",j+1,167,233);
            scanf("%d",&vet[j]);
            if(vet[j]<0 || vet[j]>99)flag=1;
        }while(flag );
        j++;
    }while( j < Tm );
    cout<<"\nInforma Cada Digito Se eh Par ou Impar\n"<<endl;
    for(j=0;j<Tm;j++){
        x=vet[j] / 10;
        y=vet[j] % 10;
        p='I';
        if(x % 2 == 0)
            p='P';
        ii='I';
        if(y % 2 == 0)
            ii='P';
        textcolor(11,0);
        cout<<vet[j];
        textcolor(7,0);
        cout<<" = ";
        textcolor(9,14);
        cout<<" "<<p<<" "<<" "<<ii<<" "<<endl;
    }
    textcolor(7,0);
    cout<<endl;
    pausar(1000);
    for(i=0; i<Tm; i++)/* coloca em ordem crescente */
        for(j=i+1; j<Tm; j++)
            if(  vet[i] > vet[j]){
                 aux    = vet[i] ;
                 vet[i] = vet[j] ;
                 vet[j] = aux    ;
            }
    printf("\nNumeros Ordenados Crescente\n");
    for(j=0;j<Tm;j++)
        printf("%3d\n",vet[j]);
    printf("\n\n");
    pausar(1000);
    printf("Numeros Em Colunas\n");
    for(j=0;j<Tm;j+=2)
        printf("%3d , %3d\n",vet[j],vet[j+1]);
    pausar(1000);
    printf("\n\nResultado Da Subtracao\n");
    for(j=0;j<Tm;j++){
        num    = (int)vet[j]/10;
        resto  = vet[j] % 10   ;
        if(resto==0)resto=10;
        if(num  ==0)num=10;
        result = abs  (resto - num ) ;
        printf("%3d - %3d => %3d\n",num,resto,result);
    }
    P=0;i=0;
    printf("\nLista de Numeros Pares\n\n");
    for(j=0; j<Tm; j++){
        if(vet[j]%2==0){
            P++;
            printf("  %d\n",vet[j]);
        }
        else i++;
    }
    printf(" Total de Pares %d\n\n",P);
    printf("\nLista de Numeros Impares\n\n");
    for(j=0; j<Tm; j++){
        if(vet[j]%2!= 0){
            printf("  %d\n",vet[j]);
        }
    }
    printf(" Total de Impares %d\n\n",i);
    if(P>i){
        printf("Os Pares sao mais que os impares !\n");
        for(j=0;j<Tm;j++)
            if(vet[j]%2==0)printf(" %d\n",vet[j]);
    }
    else if(P<i){
        printf("Os Impares sao mais que os Pares !\n");
        for(j=0;j<Tm;j++)
            if(vet[j]%2!=0)printf(" %d\n",vet[j]);
    }
    else printf("Os Impares e Pares Sao Iguais !");
    printf("\n\n");
    u=pausar(1000);
    sair(u);
    return 0;
}
int pausar(int r){
    printf("\n    Tecle !    ");
    int carac[8]={179,47,196,92,179,47,196,92};
    int j,w,x,y,l;                            /* variáveis simples                       */
    HANDLE hOut;                              /* controle dos dispositivos do pc         */
    hOut= GetStdHandle(STD_OUTPUT_HANDLE);    /* pega a saída padrão                     */
    CONSOLE_SCREEN_BUFFER_INFO SBInfo;        /* informações sobre a buffer da tela      */
    GetConsoleScreenBufferInfo(hOut, &SBInfo);/* pega a posição do cursor do console     */
    x = SBInfo.dwCursorPosition.X;            /* X será a posição x do cursor no console */
    y = SBInfo.dwCursorPosition.Y;            /* Y será a posição y do cursor no console */
    l = x;
    for(j=0;j<10;j++){
        textcolor(12,15);                     /* primeiro a cor da letra , segundo a cor de fundo */
        gotoxy(x+3,y);
        printf(" %d ",9-j);                   /* contagem decrescente                    */
        textcolor(10,0);
        for(w=0;w<8;w++){
            if(kbhit()){
                w=getch();
                j=10;
                break;
            }
            gotoxy(x,y);
            printf("%c",carac[w]);            /* gira o caractere na tela                */
            Sleep(r/25);                      /* dorme um tempinho                       */
        }
    }
    gotoxy(x,y);
    textcolor(7,0);
    printf("      \n\n");
    return y;
}
void sair(int u){
    int aux;
    int a,b,c,d,t,l,ll=u+5,cc=15,x=-1,i;
    textcolor(14,0);
    gotoxy(0,80);
    for(a=0; a<8; a++)//6 letras
    {
        l=ll;
        for(b=0; b<5; b++)//de 5 linhas
        {
            x=x+1;
            c=cc;
            aux=numeros[x];
            i=aux;
            for(d=0; d<5; d++)//e 5 colunas
            {
                gotoxy(c,l);
                if(i % 2 != 0)printf("%c",219);
                else printf(" ");
                i=i / 2;
                c=c-1;
                Sleep(10);
            }
            l=l+1;
        }
        cc=cc+7;
    }
    gotoxy(84,73);
    printf("\n\n");
    Sleep(2000);
}

 

 

  • Curtir 1
Postado

Olá  boa noite preciso saber

quais números que aparecem mais no resultado se sao ímpares ou pares, exemplo: Mostrar no resultado que a quantiade de numeros impares é  maior ou menor doque o de pares ou vice e versa. Depois mostrar os numeros caso o numero maior seja par, mostrar esses numeros os que mais se repetiram. Boa noite

  • Curtir 1
Postado

@devair1010

Em 26/03/2019 às 21:17, devair1010 disse:

@Marcela da Silva de Souza      aqui tem essas funções e mais essa de mostrar os pares e ímpares :

 

 

 

Boa tarde, nesse codigo acima quando eu coloco 10 ou algum numero numero na casa  tipo 11, 12,13, 14.... ou algum numero que contenha 0 no começo tipo 01, 02, 03, 04, 05..... da um bug, a tela enche de numeros  e nao para...o que será

?

  • Obrigado 1
Postado

@Marcela da Silva de Souza      testei esse código aqui e não está acontecendo assim como você disse não ,   experimente esse aí     :

 

#include <iostream>/* em c++ precisa desse include  */
#include <stdlib.h>
#include <math.h>
#include <conio.h>
#include <string>
#define Tm 8
#include <windows.h>
/*             0     1    2     3   4      5      6      7         8       */
typedef enum{BLACK,BLUE,GREEN,CYAN,RED,MAGENTA,BROWN,LIGHTGRAY,DARKGRAY,   /* nome das cores */
LIGHTBLUE,LIGHTGREEN,LIGHTCYAN,LIGHTRED,LIGHTMAGENTA,YELLOW,WHITE} COLORS;
/*  9         10         11        12        13         14    15           */

static int __BACKGROUND = 1/*BLACK*/;/*pode ser o numero ou o nome da cor*/
static int __FOREGROUND = LIGHTGRAY;

void textcolor (int letras, int fundo){/*para mudar a cor de fundo mude o background*/
    __FOREGROUND = letras;
    __BACKGROUND = fundo;
    SetConsoleTextAttribute (GetStdHandle (STD_OUTPUT_HANDLE),
    letras + (__BACKGROUND << 4));
}
                  /* y = linha de 0 a 24 , x = coluna de 0 a 80 */
void gotoxy(int x, int y){/*imprimir na linha e coluna desejada */
  COORD c;
  c.X = x;
  c.Y = y;
  SetConsoleCursorPosition (GetStdHandle(STD_OUTPUT_HANDLE), c);
}
int numeros[40]={15,16,14,1,30,14,17,31,17,17,14,4,4,4,14,17,
                 25,21,19,17,28,18,17,18,28,14,17,17,17,14,0,
                 0,0,0,0,1,2,4,0,16,};
int pausar(int r);
void sair(int u);
using namespace std;/* em c++ precisa de desse comando */
int main(){
    int vet[60],aux,num,flag,x,y,l,P,u;
    int i,j=0,resto,result,soma=0,total=0;
    int n= 8,numeros[4096],l0,l1,l2,l3;
    int dezenas[4] = {10,12,20,55};
    string p,ii;
    printf("Digite os numeros de 0 ate 99\n\n");
    do{
        do{
            flag=0;
            printf("Digite O %d%c N%cmero ",j+1,167,233);
            scanf("%d",&vet[j]);
            if(vet[j]<0 || vet[j]>99)flag=1;
        }while(flag );
        j++;
    }while( j < Tm );
    cout<<"\nInforma Cada Digito Se eh Par ou Impar\n"<<endl;
    for(j=0;j<Tm;j++){
        x=vet[j] / 10;
        y=vet[j] % 10;
        p='I';
        if(x % 2 == 0)
            p='P';
        ii='I';
        if(y % 2 == 0)
            ii='P';
        textcolor(11,0);
        if(vet[j]<10)cout<<" "<<vet[j];
        else cout<<vet[j];
        textcolor(7,0);
        cout<<" = ";
        textcolor(9,14);
        cout<<" "<<p<<" "<<" "<<ii<<" "<<endl;
    }
    textcolor(7,0);
    cout<<endl;
    pausar(1000);
    for(i=0; i<Tm; i++)/* coloca em ordem crescente */
        for(j=i+1; j<Tm; j++)
            if(  vet[i] > vet[j]){
                 aux    = vet[i] ;
                 vet[i] = vet[j] ;
                 vet[j] = aux    ;
            }
    printf("\nNumeros Ordenados Crescente\n");
    for(j=0;j<Tm;j++)
        printf("%3d\n",vet[j]);
    printf("\n\n");
    pausar(1000);
    printf("Numeros Em Colunas\n");
    for(j=0;j<Tm;j+=2)
        printf("%3d , %3d\n",vet[j],vet[j+1]);
    pausar(1000);
    printf("\n\nResultado Da Subtracao\n");
    for(j=0;j<Tm;j++){
        num    = (int)vet[j]/10;
        resto  = vet[j] % 10   ;
        if(resto==0)resto=10;
        if(num  ==0)num=10;
        result = abs  (resto - num ) ;
        printf("%3d - %3d => %3d\n",num,resto,result);
    }
    P=0;i=0;
    printf("\nLista de Numeros Pares\n\n");
    for(j=0; j<Tm; j++){
        if(vet[j]%2==0){
            P++;
            printf("  %d\n",vet[j]);
        }
        else i++;
    }
    printf(" Total de Pares %d\n\n",P);
    printf("\nLista de Numeros Impares\n\n");
    for(j=0; j<Tm; j++){
        if(vet[j]%2!= 0){
            printf("  %d\n",vet[j]);
        }
    }
    printf(" Total de Impares %d\n\n",i);
    if(P>i){
        printf("Os Pares sao mais que os impares !\n");
        for(j=0;j<Tm;j++)
            if(vet[j]%2==0)printf(" %d\n",vet[j]);
    }
    else if(P<i){
        printf("Os Impares sao mais que os Pares !\n");
        for(j=0;j<Tm;j++)
            if(vet[j]%2!=0)printf(" %d\n",vet[j]);
    }
    else printf("Os Impares e Pares Sao Iguais !");
    printf("\n\n");
    u=pausar(1000);
    sair(u);
    return 0;
}
int pausar(int r){
    printf("\n    Tecle !    ");
    int carac[8]={179,47,196,92,179,47,196,92};
    int j,w,x,y,l;                            /* variáveis simples                       */
    HANDLE hOut;                              /* controle dos dispositivos do pc         */
    hOut= GetStdHandle(STD_OUTPUT_HANDLE);    /* pega a saída padrão                     */
    CONSOLE_SCREEN_BUFFER_INFO SBInfo;        /* informações sobre a buffer da tela      */
    GetConsoleScreenBufferInfo(hOut, &SBInfo);/* pega a posição do cursor do console     */
    x = SBInfo.dwCursorPosition.X;            /* X será a posição x do cursor no console */
    y = SBInfo.dwCursorPosition.Y;            /* Y será a posição y do cursor no console */
    l = x;
    for(j=0;j<10;j++){
        textcolor(12,15);                     /* primeiro a cor da letra , segundo a cor de fundo */
        gotoxy(x+3,y);
        printf(" %d ",9-j);                   /* contagem decrescente                    */
        textcolor(10,0);
        for(w=0;w<8;w++){
            if(kbhit()){
                w=getch();
                j=10;
                break;
            }
            gotoxy(x,y);
            printf("%c",carac[w]);            /* gira o caractere na tela                */
            Sleep(r/25);                      /* dorme um tempinho                       */
        }
    }
    gotoxy(x,y);
    textcolor(7,0);
    printf("      \n\n");
    return y;
}
void sair(int u){
    int aux;
    int a,b,c,d,t,l,ll=u+5,cc=15,x=-1,i;
    textcolor(14,0);
    gotoxy(0,80);
    for(a=0; a<8; a++)//6 letras
    {
        l=ll;
        for(b=0; b<5; b++)//de 5 linhas
        {
            x=x+1;
            c=cc;
            aux=numeros[x];
            i=aux;
            for(d=0; d<5; d++)//e 5 colunas
            {
                gotoxy(c,l);
                if(i % 2 != 0)printf("%c",219);
                else printf(" ");
                i=i / 2;
                c=c-1;
                Sleep(10);
            }
            l=l+1;
        }
        cc=cc+7;
    }
    gotoxy(84,73);
    printf("\n\n");
    Sleep(2000);
}

 

 

  • Amei 1
Postado

 

@Marcela da Silva de Souza       um código mais organizado :

#include <iostream>/* em c++ precisa desse include  */
#include <stdlib.h>
#include <math.h>
#include <conio.h>
#include <string>
#include <windows.h>
/*             0     1    2     3   4      5      6      7         8       */
typedef enum{BLACK,BLUE,GREEN,CYAN,RED,MAGENTA,BROWN,LIGHTGRAY,DARKGRAY,   /* nome das cores */
LIGHTBLUE,LIGHTGREEN,LIGHTCYAN,LIGHTRED,LIGHTMAGENTA,YELLOW,WHITE} COLORS;
/*  9         10         11        12        13         14    15           */

static int __BACKGROUND = 1/*BLACK*/;/*pode ser o numero ou o nome da cor*/
static int __FOREGROUND = LIGHTGRAY;

void textcolor2 (int letras, int fundo){/*para mudar a cor de fundo mude o background*/
    __FOREGROUND = letras;
    __BACKGROUND = fundo;
    SetConsoleTextAttribute (GetStdHandle (STD_OUTPUT_HANDLE),
    letras + (__BACKGROUND << 4));
}
                  /* y = linha de 0 a 24 , x = coluna de 0 a 80 */
void gotoxy2(int x, int y){/*imprimir na linha e coluna desejada */
  COORD c;
  c.X = x;
  c.Y = y;
  SetConsoleCursorPosition (GetStdHandle(STD_OUTPUT_HANDLE), c);
}
void desenhar_tela();
void ordenar(int vet[]);
void inserir(int vet[]);
void combinacoes(int vet[]);
void par_e_impar(int vet[]);
void subtracao(int vet[]);
void em_colunas(int vet[]);
void listar_impares(int vet[]);
void listar_pares(int vet[]);
void total_pares_e_impares(int vet[]);

using namespace std;/* em c++ precisa de desse comando */
/* variáveis Globais */
int Tm=8,par,impar,ja,ja_2,j,i,result[800],aux;
int pos[100]={10,5,201,70,5,187,10,18,204,70,18,185,10,20,200,70,20,188};
string menu[1][10] = {"1 - Inserir Os Numeros",
                      "2 - Ordenar Os Numeros",
                      "3 - Subtracao Dos Numeros",
                      "4 - Imprimir Pares e Impaes",
                      "5 - Imprimir em colunas",
                      "6 - Listar Impares",
                      "7 - Listar pares",
                      "8 - combinacoes",
                      "9 - Total de Pares e Impares",
                      "0 - Sair"
        };
int main(){
    int vet[60],aux,num,flag,x,y,l,P,u,opc;
    int resto,soma=0,total=0;
    int n= 8,numeros[4096],l0,l1,l2,l3;
    int dezenas[4] = {10,12,20,55};
    string p,ii;
    do{
        system("cls");
        for(j=0;j<10;j++){
            gotoxy2(12,j+7);
            cout<<menu[0][j];
        }
        desenhar_tela();
        gotoxy2(12,19);
        cout<<"escolha opcao ";
        cin>>opc;
        system("cls");
        switch(opc){
        case 1:
            inserir(vet);
            break;
        case 2:
            ordenar(vet);
            break;
        case 3:
            subtracao(vet);
            break;
        case 4:
            par_e_impar(vet);
            break;
        case 5:
            em_colunas(vet);
            break;
        case 6:
            listar_impares(vet);
            break;
        case 7:
            listar_pares(vet);
            break;
        case 8:
            combinacoes(result);
            break;
        case 9:
            total_pares_e_impares(vet);
            break;
        case 0:
            break;
        }
        if(opc != 0){
            cout<<"\n      Tecle !";
            getch();
        }
    }while(opc != 0);
    printf("\n\n");
    return 0;
}
void combinacoes(int res[]){
    int a,b,c,d,e,f,cont=1;
    cout<<"Combinacoes com resultado da subtracao !\n"<<endl;
    if( ! ja_2 )cout<<"\nprimeiro vah na OPcao 1 e Opcao 3 !"<<endl;
    else
    for(a=0;a<Tm-5;a++)
        for(b=a+1;b<Tm-4;b++)
            for(c=b+1;c<Tm-3;c++)
                for(d=c+1;d<Tm-2;d++)
                    for(e=d+1;e<Tm-1;e++){
                        for(f=e+1;f<Tm-0;f++)  {
                            if(cont<10)
                            cout<<" "<<cont<<" -> ";
                            else cout<<cont<<" -> ";
                            cout<<res[a]<<" - ";
                            cout<<res[b]<<" - ";
                            cout<<res[c]<<" - ";
                            cout<<res[d]<<" - ";
                            cout<<res[e]<<" - ";
                            cout<<res[f]       ;
                            cout<<endl         ;
                            cont++             ;
                        }
                    }
}
void ordenar(int vet[]){
    int aux;
    for(i=0; i<Tm; i++)/* coloca em ordem crescente */
        for(j=i+1; j<Tm; j++)
            if(  vet[i] > vet[j]){
                 aux    = vet[i] ;
                 vet[i] = vet[j] ;
                 vet[j] = aux    ;
            }
    printf("\nNumeros Ordenados Crescente\n");
    for(j=0;j<Tm;j++)
        printf("%3d\n",vet[j]);
}
void inserir(int vet[]){
    int flag,j=0;
    if( ja )cout<<"Sobrescrever numeros existentes !"<<endl;
    do{
        cout<<"Quantidade De Numeros (  de 6 ate 20  )";
        cin>>Tm;
    }while(Tm<6 || Tm>20);
    ja=1;ja_2=0;
    printf("Digite os numeros de 0 ate 99\n\n");
    do{
        do{
            flag=0;
            printf("Digite O %d%c N%cmero ",j+1,167,233);
            scanf("%d",&vet[j]);
            if(vet[j]<0 || vet[j]>99)flag=1;
        }while(flag );
        j++;
    }while( j < Tm );
}
void par_e_impar(int vet[]){
    int x,y;
    char p,ii;
    cout<<"\nInforma Cada Digito Se eh Par ou Impar\n"<<endl;
    for(j=0;j<Tm;j++){
        x=vet[j] / 10;
        y=vet[j] % 10;
        p='I';
        if(x % 2 == 0)
            p='P';
        ii='I';
        if(y % 2 == 0)
            ii='P';
        textcolor2(11,0);
        if(vet[j]<10)cout<<" "<<vet[j];
        else cout<<vet[j];
        textcolor2(7,0);
        cout<<" = ";
        textcolor2(9,14);
        cout<<" "<<p<<" "<<" "<<ii<<" "<<endl;
    }
    textcolor2(7,0);
}
void em_colunas(int vet[]){
    printf("Numeros Em Colunas\n");
    for(j=0;j<Tm;j+=2)
        printf("%3d , %3d\n",vet[j],vet[j+1]);
}
void subtracao(int vet[]){
    int num,resto;
    ja_2=1;
    printf("\n\nResultado Da Subtracao\n");
    for(j=0;j<Tm;j++){
        num       = (int)vet[j]/10;
        resto     = vet[j] % 10   ;
        if(resto  ==0)resto=10;
        if(num    ==0)num=10;
        result[j] = abs  (resto - num ) ;
        printf("%3d - %3d => %3d\n",num,resto,result[j]);
    }
    for(j=0;j<Tm;j++)
        for(i=j+1;i<Tm;i++)
            if(result[j]>result[i]){
                aux = result[j];
                result[j] = result[i];
                result[i] = aux;
            }
}
void listar_impares(int vet[]){
    printf("\nLista de Numeros Impares\n\n");
    for(j=0; j<Tm; j++){
        if(vet[j]%2!= 0){
            impar++;
            printf("  %d\n",vet[j]);
        }
    }
    printf(" Total de Impares %d\n\n",impar);
}
void listar_pares(int vet[]){
    int par=0;
    printf("\nLista de Numeros Pares\n\n");
    for(j=0; j<Tm; j++){
        if(vet[j]%2==0){
            par++;
            printf("  %d\n",vet[j]);
        }
        else i++;
    }
    printf(" Total de Pares %d\n\n",par);
}
void total_pares_e_impares(int vet[]){
    if( ! ja ){cout<<"primeiro va na opcao 1"<<endl;/*return 0*/}
    else{
    if(par>impar){
        printf("Os Pares sao mais que os impares !\n");
        for(j=0;j<Tm;j++)
            if(vet[j]%2==0)printf(" %d\n",vet[j]);
    }
    else if(par<impar){
        printf("Os Impares sao mais que os Pares !\n");
        for(j=0;j<Tm;j++)
            if(vet[j]%2!=0)printf(" %d\n",vet[j]);
    }
    else printf("Os Impares e Pares Sao Iguais !");
    }
}
void desenhar_tela(){
    for(j=5;j<71;j++){
        if(j<21){gotoxy2(10, j);printf("%c",186);
                 gotoxy2(70, j);printf("%c",186);}
        if(j> 9){gotoxy2( j, 5);printf("%c",205);
                 gotoxy2( j,18);printf("%c",205);
                 gotoxy2( j,20);printf("%c",205);}
    }
    for(j=0;j<7;j++){
        gotoxy2(pos[j*3],pos[j*3+1]);
        printf("%c",pos[j*3+2]);
    }
}

 

 

  • Curtir 1
Postado
Em 10/04/2019 às 22:49, devair1010 disse:

 

@Marcela da Silva de Souza       um código mais organizado :


#include <iostream>/* em c++ precisa desse include  */
#include <stdlib.h>
#include <math.h>
#include <conio.h>
#include <string>
#include <windows.h>
/*             0     1    2     3   4      5      6      7         8       */
typedef enum{BLACK,BLUE,GREEN,CYAN,RED,MAGENTA,BROWN,LIGHTGRAY,DARKGRAY,   /* nome das cores */
LIGHTBLUE,LIGHTGREEN,LIGHTCYAN,LIGHTRED,LIGHTMAGENTA,YELLOW,WHITE} COLORS;
/*  9         10         11        12        13         14    15           */

static int __BACKGROUND = 1/*BLACK*/;/*pode ser o numero ou o nome da cor*/
static int __FOREGROUND = LIGHTGRAY;

void textcolor2 (int letras, int fundo){/*para mudar a cor de fundo mude o background*/
    __FOREGROUND = letras;
    __BACKGROUND = fundo;
    SetConsoleTextAttribute (GetStdHandle (STD_OUTPUT_HANDLE),
    letras + (__BACKGROUND << 4));
}
                  /* y = linha de 0 a 24 , x = coluna de 0 a 80 */
void gotoxy2(int x, int y){/*imprimir na linha e coluna desejada */
  COORD c;
  c.X = x;
  c.Y = y;
  SetConsoleCursorPosition (GetStdHandle(STD_OUTPUT_HANDLE), c);
}
void desenhar_tela();
void ordenar(int vet[]);
void inserir(int vet[]);
void combinacoes(int vet[]);
void par_e_impar(int vet[]);
void subtracao(int vet[]);
void em_colunas(int vet[]);
void listar_impares(int vet[]);
void listar_pares(int vet[]);
void total_pares_e_impares(int vet[]);

using namespace std;/* em c++ precisa de desse comando */
/* variáveis Globais */
int Tm=8,par,impar,ja,ja_2,j,i,result[800],aux;
int pos[100]={10,5,201,70,5,187,10,18,204,70,18,185,10,20,200,70,20,188};
string menu[1][10] = {"1 - Inserir Os Numeros",
                      "2 - Ordenar Os Numeros",
                      "3 - Subtracao Dos Numeros",
                      "4 - Imprimir Pares e Impaes",
                      "5 - Imprimir em colunas",
                      "6 - Listar Impares",
                      "7 - Listar pares",
                      "8 - combinacoes",
                      "9 - Total de Pares e Impares",
                      "0 - Sair"
        };
int main(){
    int vet[60],aux,num,flag,x,y,l,P,u,opc;
    int resto,soma=0,total=0;
    int n= 8,numeros[4096],l0,l1,l2,l3;
    int dezenas[4] = {10,12,20,55};
    string p,ii;
    do{
        system("cls");
        for(j=0;j<10;j++){
            gotoxy2(12,j+7);
            cout<<menu[0][j];
        }
        desenhar_tela();
        gotoxy2(12,19);
        cout<<"escolha opcao ";
        cin>>opc;
        system("cls");
        switch(opc){
        case 1:
            inserir(vet);
            break;
        case 2:
            ordenar(vet);
            break;
        case 3:
            subtracao(vet);
            break;
        case 4:
            par_e_impar(vet);
            break;
        case 5:
            em_colunas(vet);
            break;
        case 6:
            listar_impares(vet);
            break;
        case 7:
            listar_pares(vet);
            break;
        case 8:
            combinacoes(result);
            break;
        case 9:
            total_pares_e_impares(vet);
            break;
        case 0:
            break;
        }
        if(opc != 0){
            cout<<"\n      Tecle !";
            getch();
        }
    }while(opc != 0);
    printf("\n\n");
    return 0;
}
void combinacoes(int res[]){
    int a,b,c,d,e,f,cont=1;
    cout<<"Combinacoes com resultado da subtracao !\n"<<endl;
    if( ! ja_2 )cout<<"\nprimeiro vah na OPcao 1 e Opcao 3 !"<<endl;
    else
    for(a=0;a<Tm-5;a++)
        for(b=a+1;b<Tm-4;b++)
            for(c=b+1;c<Tm-3;c++)
                for(d=c+1;d<Tm-2;d++)
                    for(e=d+1;e<Tm-1;e++){
                        for(f=e+1;f<Tm-0;f++)  {
                            if(cont<10)
                            cout<<" "<<cont<<" -> ";
                            else cout<<cont<<" -> ";
                            cout<<res[a]<<" - ";
                            cout<<res[b]<<" - ";
                            cout<<res[c]<<" - ";
                            cout<<res[d]<<" - ";
                            cout<<res[e]<<" - ";
                            cout<<res[f]       ;
                            cout<<endl         ;
                            cont++             ;
                        }
                    }
}
void ordenar(int vet[]){
    int aux;
    for(i=0; i<Tm; i++)/* coloca em ordem crescente */
        for(j=i+1; j<Tm; j++)
            if(  vet[i] > vet[j]){
                 aux    = vet[i] ;
                 vet[i] = vet[j] ;
                 vet[j] = aux    ;
            }
    printf("\nNumeros Ordenados Crescente\n");
    for(j=0;j<Tm;j++)
        printf("%3d\n",vet[j]);
}
void inserir(int vet[]){
    int flag,j=0;
    if( ja )cout<<"Sobrescrever numeros existentes !"<<endl;
    do{
        cout<<"Quantidade De Numeros (  de 6 ate 20  )";
        cin>>Tm;
    }while(Tm<6 || Tm>20);
    ja=1;ja_2=0;
    printf("Digite os numeros de 0 ate 99\n\n");
    do{
        do{
            flag=0;
            printf("Digite O %d%c N%cmero ",j+1,167,233);
            scanf("%d",&vet[j]);
            if(vet[j]<0 || vet[j]>99)flag=1;
        }while(flag );
        j++;
    }while( j < Tm );
}
void par_e_impar(int vet[]){
    int x,y;
    char p,ii;
    cout<<"\nInforma Cada Digito Se eh Par ou Impar\n"<<endl;
    for(j=0;j<Tm;j++){
        x=vet[j] / 10;
        y=vet[j] % 10;
        p='I';
        if(x % 2 == 0)
            p='P';
        ii='I';
        if(y % 2 == 0)
            ii='P';
        textcolor2(11,0);
        if(vet[j]<10)cout<<" "<<vet[j];
        else cout<<vet[j];
        textcolor2(7,0);
        cout<<" = ";
        textcolor2(9,14);
        cout<<" "<<p<<" "<<" "<<ii<<" "<<endl;
    }
    textcolor2(7,0);
}
void em_colunas(int vet[]){
    printf("Numeros Em Colunas\n");
    for(j=0;j<Tm;j+=2)
        printf("%3d , %3d\n",vet[j],vet[j+1]);
}
void subtracao(int vet[]){
    int num,resto;
    ja_2=1;
    printf("\n\nResultado Da Subtracao\n");
    for(j=0;j<Tm;j++){
        num       = (int)vet[j]/10;
        resto     = vet[j] % 10   ;
        if(resto  ==0)resto=10;
        if(num    ==0)num=10;
        result[j] = abs  (resto - num ) ;
        printf("%3d - %3d => %3d\n",num,resto,result[j]);
    }
    for(j=0;j<Tm;j++)
        for(i=j+1;i<Tm;i++)
            if(result[j]>result[i]){
                aux = result[j];
                result[j] = result[i];
                result[i] = aux;
            }
}
void listar_impares(int vet[]){
    printf("\nLista de Numeros Impares\n\n");
    for(j=0; j<Tm; j++){
        if(vet[j]%2!= 0){
            impar++;
            printf("  %d\n",vet[j]);
        }
    }
    printf(" Total de Impares %d\n\n",impar);
}
void listar_pares(int vet[]){
    int par=0;
    printf("\nLista de Numeros Pares\n\n");
    for(j=0; j<Tm; j++){
        if(vet[j]%2==0){
            par++;
            printf("  %d\n",vet[j]);
        }
        else i++;
    }
    printf(" Total de Pares %d\n\n",par);
}
void total_pares_e_impares(int vet[]){
    if( ! ja ){cout<<"primeiro va na opcao 1"<<endl;/*return 0*/}
    else{
    if(par>impar){
        printf("Os Pares sao mais que os impares !\n");
        for(j=0;j<Tm;j++)
            if(vet[j]%2==0)printf(" %d\n",vet[j]);
    }
    else if(par<impar){
        printf("Os Impares sao mais que os Pares !\n");
        for(j=0;j<Tm;j++)
            if(vet[j]%2!=0)printf(" %d\n",vet[j]);
    }
    else printf("Os Impares e Pares Sao Iguais !");
    }
}
void desenhar_tela(){
    for(j=5;j<71;j++){
        if(j<21){gotoxy2(10, j);printf("%c",186);
                 gotoxy2(70, j);printf("%c",186);}
        if(j> 9){gotoxy2( j, 5);printf("%c",205);
                 gotoxy2( j,18);printf("%c",205);
                 gotoxy2( j,20);printf("%c",205);}
    }
    for(j=0;j<7;j++){
        gotoxy2(pos[j*3],pos[j*3+1]);
        printf("%c",pos[j*3+2]);
    }
}

 

 

Bom dia, eu gostaria que ao invés de ter que digitar numero abaixo de outro no quadro preto de complicação, o usuario pudesse digitar conjuntos tipo numeros do lado do outro exemplo:

 

Concurso:   numeros de resultados:

049-      02, 04, 13, 15, 20, 33

046_     01, 05,08, 10, 32, 36

051_     02, 06, 11, 14, 19, 49

 

Usando  essas quantidades de numeros para cima.

 

  • Obrigado 1
Postado

@Marcela da Silva de Souza      experimente esse código :

#include <iostream>/* em c++ precisa desse include  */
#include <stdlib.h>
#include <math.h>
#include <time.h>
#include <conio.h>
#include <string>
#include <windows.h>
/*             0     1    2     3   4      5      6      7         8       */
typedef enum{BLACK,BLUE,GREEN,CYAN,RED,MAGENTA,BROWN,LIGHTGRAY,DARKGRAY,   /* nome das cores */
LIGHTBLUE,LIGHTGREEN,LIGHTCYAN,LIGHTRED,LIGHTMAGENTA,YELLOW,WHITE} COLORS;
/*  9         10         11        12        13         14    15           */

static int __BACKGROUND = 1/*BLACK*/;/*pode ser o numero ou o nome da cor*/
static int __FOREGROUND = LIGHTGRAY;

void textcolor2 (int letras, int fundo){/*para mudar a cor de fundo mude o background*/
    __FOREGROUND = letras;
    __BACKGROUND = fundo;
    SetConsoleTextAttribute (GetStdHandle (STD_OUTPUT_HANDLE),
    letras + (__BACKGROUND << 4));
}
                  /* y = linha de 0 a 24 , x = coluna de 0 a 80 */
void gotoxy2(int x, int y){/*imprimir na linha e coluna desejada */
  COORD c;
  c.X = x;
  c.Y = y;
  SetConsoleCursorPosition (GetStdHandle(STD_OUTPUT_HANDLE), c);
}
void listar_conc(int vet[]          );
void quadro(                        );
void desenhar_tela(                 );
void ordenar(int vet[]              );
int  inserir(int vet[]              );
void combinacoes(int vet[]          );
void par_e_impar(int vet[]          );
void subtracao(int vet[]            );
void em_colunas(int vet[]           );
void listar_impares(int vet[]       );
void listar_pares(int vet[]         );
void total_pares_e_impares(int vet[]);

using namespace std;/* em c++ precisa de desse comando */
/* variáveis Globais */
int concurso[200];
int Tm,par,impar,ja,ja_2,j,i,result[800],aux;
int posi[8]={1,6,9,12,15,18,21,24};
int pos[100]={10,5,201,70,5,187,10,18,204,70,18,185,10,20,200,70,20,188};
string menu[1][11] = {
                      " 0 - Sair",
                      " 1 - Inserir Os Numeros",
                      " 2 - Ordenar Os Numeros",
                      " 3 - Subtracao Dos Numeros",
                      " 4 - Imprimir Pares e Impaes",
                      " 5 - Imprimir em colunas",
                      " 6 - Listar Impares",
                      " 7 - Listar pares",
                      " 8 - combinacoes",
                      " 9 - Total de Pares e Impares",
                      "10 - Listar concurso"
        };
int main(){
    srand(time(NULL));
    textcolor2(9,15);
    system("cls");
    int vet[60],aux,num,flag,x,y,l,P,u,opc;
    int resto,soma=0,total=0;
    int n= 8,numeros[4096],l0,l1,l2,l3;
    int dezenas[4] = {10,12,20,55};
    string p,ii;
    do{
        textcolor2(9,15);
        system("cls");
        for(j=0;j<11;j++){
            gotoxy2(12,j+7);
            cout<<menu[0][j];
        }
        desenhar_tela();
        gotoxy2(12,19);
        cout<<"escolha opcao ";
        cin>>opc;
        system("cls");
        switch(opc){
        case 1:
            inserir(vet);
            break;
        case 2:
            ordenar(vet);
            break;
        case 3:
            subtracao(vet);
            break;
        case 4:
            par_e_impar(vet);
            break;
        case 5:
            em_colunas(vet);
            break;
        case 6:
            listar_impares(vet);
            break;
        case 7:
            listar_pares(vet);
            break;
        case 8:
            combinacoes(result);
            break;
        case 9:
            total_pares_e_impares(vet);
            break;
        case 10:
            listar_conc(vet);
            break;
        case 0:
            break;
        }
        if(opc != 0){
            cout<<"\n      Tecle !";
            getch();
        }
    }while(opc != 0);
    for(x=0;x<600;x++){
        textcolor2(rand()%15+1,15);
        y=rand()%40;P=rand()%13;
        gotoxy2(y,P);
        cout<<"\xDB";
        gotoxy2(y+40,P);
        cout<<"\xDB";
        gotoxy2(y,P+12);
        cout<<"\xDB";
        gotoxy2(y+40,P+12);
        cout<<"\xDB";
    }
    textcolor2(9,15);
    gotoxy2(0,19);
    cout<<"                                                        ";
    gotoxy2(0,20);
    cout<<"                                                        ";
    for(x=0;x<53;x++){
        gotoxy2(x,18);
        cout<<"\xC4";
        gotoxy2(x,21);
        cout<<"\xC4";
        if(x<5){
            gotoxy2(52,x+18);
            cout<<"\xB3";
        }
        gotoxy2(52,18);
        cout<<"\xBF";
        gotoxy2(52,21);
        cout<<"\xD9";
    }
    gotoxy2(1,18);
    textcolor2(12,15);
    return 0;
}
void combinacoes(int res[]){
    int a,b,c,d,e,f,cont=1,ct=25;
    cout<<"Combinacoes com resultado da subtracao !\n"<<endl;
    if( ! ja_2 )cout<<"\nprimeiro vah na OPcao 1 e Opcao 3 !"<<endl;
    else
    for(a=0;a<Tm-5;a++)
        for(b=a+1;b<Tm-4;b++)
            for(c=b+1;c<Tm-3;c++)
                for(d=c+1;d<Tm-2;d++)
                    for(e=d+1;e<Tm-1;e++){
                        for(f=e+1;f<Tm-0;f++)  {
                            if(cont<10)
                            cout<<" "<<cont<<" -> ";
                            else cout<<cont<<" -> ";
                            cout<<res[a]<<" - ";
                            cout<<res[b]<<" - ";
                            cout<<res[c]<<" - ";
                            cout<<res[d]<<" - ";
                            cout<<res[e]<<" - ";
                            cout<<res[f]       ;
                            cout<<endl         ;
                            cont++             ;
                            if(cont==ct){
                                Sleep(1000);
                                ct+=25;
                            }
                        }
                    }
}
void ordenar(int vet[]){
    int aux;
    for(i=0; i<Tm; i++)/* coloca em ordem crescente */
        for(j=i+1; j<Tm; j++)
            if(  vet[i] > vet[j]){
                 aux    = vet[i] ;
                 vet[i] = vet[j] ;
                 vet[j] = aux    ;
            }
    printf("\nNumeros Ordenados Crescente\n");
    for(j=0;j<Tm;j++)
        printf("%3d\n",vet[j]);
}
int inserir(int vet[]){
    int flag,j=0,cnc,w,co,a,b,h,conc=0;
    char opc;
    if( ja ){
        cout<<"Sobrescrever numeros existentes ? S/N "<<endl;
        cin>>opc;
        if(toupper(opc) !='S')return 0;
    }
    do{
        cout<<"Quantidade De Concursos (  de 1 ate 200  ) ";
        cin>>Tm;
    }while( Tm < 1 || Tm > 200 );
    ja=1;ja_2=0;
    cout<<"Digite os numeros de 0 ate 99"<<endl;
    cout<<"sem teclar Enter"<<endl;
    cout<<"Concurso -:   numeros de resultados -:";
    do{
        quadro();
        gotoxy2(2,6);
        a=getche()-48;
        a*=100;
        b=getche()-48;
        a+=b*10;
        b=getche()-48;
        a+=b;
        cnc=a;
        co=7;
        for(h=0;h<6;h++){
            do{
                flag=0;
                gotoxy2(co,6);
                a=getche()-48;
                a*=10;
                b=getche()-48;
                a+=b;
                if(a < 0 || a > 99 ){
                    flag=1;
                    gotoxy2(co,6);
                    cout<<"  ";
                    gotoxy2(co,6);
                }
            }while( flag );
            co+=3;
            vet[j]=a;
            j++;
        }
        Sleep(1000);
        concurso[conc]=cnc;
        conc++;
    }while( conc < Tm );
    gotoxy2(2,9);
    Tm*=6;
}
void par_e_impar(int vet[]){
    int x,y;
    char p,ii;
    cout<<"\nInforma Cada Digito Se eh Par ou Impar\n"<<endl;
    for(j=0;j<Tm;j++){
        x=vet[j] / 10;
        y=vet[j] % 10;
        p='I';
        if(x % 2 == 0)
            p='P';
        ii='I';
        if(y % 2 == 0)
            ii='P';
        textcolor2(11,0);
        if(vet[j]<10)cout<<" "<<vet[j];
        else cout<<vet[j];
        textcolor2(7,0);
        cout<<" = ";
        textcolor2(9,14);
        cout<<" "<<p<<" "<<" "<<ii<<" "<<endl;
    }
    textcolor2(7,0);
}
void em_colunas(int vet[]){
    printf("Numeros Em Colunas\n");
    for(j=0;j<Tm;j+=2)
        printf("%3d , %3d\n",vet[j],vet[j+1]);
}
void subtracao(int vet[]){
    int num,resto;
    ja_2=1;
    printf("\n\nResultado Da Subtracao\n");
    for(j=0;j<Tm;j++){
        num       = (int)vet[j]/10;
        resto     = vet[j] % 10   ;
        if(resto  == 0)resto=10;
        if(num    == 0)num=10;
        result[j] = abs(resto - num ) ;
        printf("%3d - %3d => %3d\n",num,resto,result[j]);
    }
    for(j=0;j<Tm;j++)
        for(i=j+1;i<Tm;i++)
            if(result[j]>result[i]){
                aux = result[j];
                result[j] = result[i];
                result[i] = aux;
            }
}
void listar_impares(int vet[]){
    printf("\nLista de Numeros Impares\n\n");
    for(j=0; j<Tm; j++){
        if(vet[j]%2!= 0){
            impar++;
            printf("  %d\n",vet[j]);
        }
    }
    printf(" Total de Impares %d\n\n",impar);
}
void listar_pares(int vet[]){
    int par=0;
    printf("\nLista de Numeros Pares\n\n");
    for(j=0; j<Tm; j++){
        if(vet[j]%2==0){
            par++;
            printf("  %d\n",vet[j]);
        }
        else i++;
    }
    printf(" Total de Pares %d\n\n",par);
}
void total_pares_e_impares(int vet[]){
    if( ! ja ){cout<<"primeiro va na opcao 1"<<endl;/*return 0*/}
    else{
    if(par>impar){
        printf("Os Pares sao mais que os impares !\n");
        for(j=0;j<Tm;j++)
            if(vet[j]%2==0)printf(" %d\n",vet[j]);
    }
    else if(par<impar){
        printf("Os Impares sao mais que os Pares !\n");
        for(j=0;j<Tm;j++)
            if(vet[j]%2!=0)printf(" %d\n",vet[j]);
    }
    else printf("Os Impares e Pares Sao Iguais !");
    }
}
void desenhar_tela(){
    for(j=5;j<71;j++){
        if(j<21){gotoxy2(10, j);printf("%c",186);
                 gotoxy2(70, j);printf("%c",186);}
        if(j> 9){gotoxy2( j, 5);printf("%c",205);
                 gotoxy2( j,18);printf("%c",205);
                 gotoxy2( j,20);printf("%c",205);}
    }
    for(j=0;j<7;j++){
        gotoxy2(pos[j*3],pos[j*3+1]);
        printf("%c",pos[j*3+2]);
    }
}
void quadro(){
    int g;
    for(g=1;g<24;g++){
        gotoxy2(g,5);cout<<"\xcd";
        gotoxy2(g,7);cout<<"\xcd";
    }
    gotoxy2(2,6);
    cout<<"                          ";
    for(g=0;g<8;g++){
        gotoxy2(posi[g],6);cout<<"\xba";
        gotoxy2(posi[g],5);cout<<"\xCB";
        gotoxy2(posi[g],7);cout<<"\xCA";
    }
    gotoxy2(1 ,5);cout<<"\xC9";
    gotoxy2(1 ,7);cout<<"\xC8";
    gotoxy2(24,5);cout<<"\xBB";
    gotoxy2(24,7);cout<<"\xBC"<<endl;
}
void listar_conc(int vet[]){
    int x,y,p=0;
    cout<<"Concurso  Numeros"<<endl;
    for(x=0;x<Tm/6;x++){
        cout<<"   ";
        if(concurso[x]<100)cout<<"0";
        if(concurso[x]<10 )cout<<"0";
        cout<<concurso[x]<<" => ";
        for(y=0;y<6;y++){
            cout<<vet[p];
            if(y<5)cout<<" - ";
            p++;
        }
        cout<<endl;
    }
}

 

Postado
Em 26/03/2019 às 21:17, devair1010 disse:

@Marcela da Silva de Souza      aqui tem essas funções e mais essa de mostrar os. Desculpe me  minha prima pequena mexeu e apagou sem querer.

 

 

#include <iostream>/* em c++ precisa desse include  */
#include <stdlib.h>
#include <math.h>
#include <time.h>
#include <conio.h>
#include <string>
#include <windows.h>
/*             0     1    2     3   4      5      6      7         8       */
typedef enum{BLACK,BLUE,GREEN,CYAN,RED,MAGENTA,BROWN,LIGHTGRAY,DARKGRAY,   /* nome das cores */
LIGHTBLUE,LIGHTGREEN,LIGHTCYAN,LIGHTRED,LIGHTMAGENTA,YELLOW,WHITE} COLORS;
/*  9         10         11        12        13         14    15           */

static int __BACKGROUND = 1/*BLACK*/;/*pode ser o numero ou o nome da cor*/
static int __FOREGROUND = LIGHTGRAY;

void textcolor2 (int letras, int fundo){/*para mudar a cor de fundo mude o background*/
    __FOREGROUND = letras;
    __BACKGROUND = fundo;
    SetConsoleTextAttribute (GetStdHandle (STD_OUTPUT_HANDLE),
    letras + (__BACKGROUND << 4));
}
                  /* y = linha de 0 a 24 , x = coluna de 0 a 80 */
void gotoxy2(int x, int y){/*imprimir na linha e coluna desejada */
  COORD c;
  c.X = x;
  c.Y = y;
  SetConsoleCursorPosition (GetStdHandle(STD_OUTPUT_HANDLE), c);
}
void listar_conc(int vet[]          );
void quadro(                        );
void desenhar_tela(                 );
void ordenar(int vet[]              );
int  inserir(int vet[]              );
void combinacoes(int vet[]          );
void par_e_impar(int vet[]          );
void subtracao(int vet[]            );
void em_colunas(int vet[]           );
void listar_impares(int vet[]       );
void listar_pares(int vet[]         );
void total_pares_e_impares(int vet[]);

using namespace std;/* em c++ precisa de desse comando */
/* variáveis Globais */
int concurso[200];
int Tm,par,impar,ja,ja_2,j,i,result[800],aux;
int posi[8]={1,6,9,12,15,18,21,24};
int pos[100]={10,5,201,70,5,187,10,18,204,70,18,185,10,20,200,70,20,188};
string menu[1][11] = {
                      " 0 - Sair",
                      " 1 - Inserir Os Numeros",
                      " 2 - Ordenar Os Numeros",
                      " 3 - Subtracao Dos Numeros",
                      " 4 - Imprimir Pares e Impaes",
                      " 5 - Imprimir em colunas",
                      " 6 - Listar Impares",
                      " 7 - Listar pares",
                      " 8 - combinacoes",
                      " 9 - Total de Pares e Impares",
                      "10 - Listar concurso"
        };
int main(){
    srand(time(NULL));
    textcolor2(9,15);
    system("cls");
    int vet[60],aux,num,flag,x,y,l,P,u,opc;
    int resto,soma=0,total=0;
    int n= 8,numeros[4096],l0,l1,l2,l3;
    int dezenas[4] = {10,12,20,55};
    string p,ii;
    do{
        textcolor2(9,15);
        system("cls");
        for(j=0;j<11;j++){
            gotoxy2(12,j+7);
            cout<<menu[0][j];
        }
        desenhar_tela();
        gotoxy2(12,19);
        cout<<"escolha opcao ";
        cin>>opc;
        system("cls");
        switch(opc){
        case 1:
            inserir(vet);
            break;
        case 2:
            ordenar(vet);
            break;
        case 3:
            subtracao(vet);
            break;
        case 4:
            par_e_impar(vet);
            break;
        case 5:
            em_colunas(vet);
            break;
        case 6:
            listar_impares(vet);
            break;
        case 7:
            listar_pares(vet);
            break;
        case 8:
            combinacoes(result);
            break;
        case 9:
            total_pares_e_impares(vet);
            break;
        case 10:
            listar_conc(vet);
            break;
        case 0:
            break;
        }
        if(opc != 0){
            cout<<"\n      Tecle !";
            getch();
        }
    }while(opc != 0);
    for(x=0;x<600;x++){
        textcolor2(rand()%15+1,15);
        y=rand()%40;P=rand()%13;
        gotoxy2(y,P);
        cout<<"\xDB";
        gotoxy2(y+40,P);
        cout<<"\xDB";
        gotoxy2(y,P+12);
        cout<<"\xDB";
        gotoxy2(y+40,P+12);
        cout<<"\xDB";
    }
    textcolor2(9,15);
    gotoxy2(0,19);
    cout<<"                                                        ";
    gotoxy2(0,20);
    cout<<"                                                        ";
    for(x=0;x<53;x++){
        gotoxy2(x,18);
        cout<<"\xC4";
        gotoxy2(x,21);
        cout<<"\xC4";
        if(x<5){
            gotoxy2(52,x+18);
            cout<<"\xB3";
        }
        gotoxy2(52,18);
        cout<<"\xBF";
        gotoxy2(52,21);
        cout<<"\xD9";
    }
    gotoxy2(1,18);
    textcolor2(12,15);
    return 0;
}
void combinacoes(int res[]){
    int a,b,c,d,e,f,cont=1,ct=25;
    cout<<"Combinacoes com resultado da subtracao !\n"<<endl;
    if( ! ja_2 )cout<<"\nprimeiro vah na OPcao 1 e Opcao 3 !"<<endl;
    else
    for(a=0;a<Tm-5;a++)
        for(b=a+1;b<Tm-4;b++)
            for(c=b+1;c<Tm-3;c++)
                for(d=c+1;d<Tm-2;d++)
                    for(e=d+1;e<Tm-1;e++){
                        for(f=e+1;f<Tm-0;f++)  {
                            if(cont<10)
                            cout<<" "<<cont<<" -> ";
                            else cout<<cont<<" -> ";
                            cout<<res[a]<<" - ";
                            cout<<res<<" - ";
                            cout<<res[c]<<" - ";
                            cout<<res[d]<<" - ";
                            cout<<res[e]<<" - ";
                            cout<<res[f]       ;
                            cout<<endl         ;
                            cont++             ;
                            if(cont==ct){
                                Sleep(1000);
                                ct+=25;
                            }
                        }
                    }
}
void ordenar(int vet[]){
    int aux;
    for(i=0; i<Tm; i++)/* coloca em ordem crescente */
        for(j=i+1; j<Tm; j++)
            if(  vet > vet[j]){
                 aux    = vet ;
                 vet = vet[j] ;
                 vet[j] = aux    ;
            }
    printf("\nNumeros Ordenados Crescente\n");
    for(j=0;j<Tm;j++)
        printf("%3d\n",vet[j]);
}
int inserir(int vet[]){
    int flag,j=0,cnc,w,co,a,b,h,conc=0;
    char opc;
    if( ja ){
        cout<<"Sobrescrever numeros existentes ? S/N "<<endl;
        cin>>opc;
        if(toupper(opc) !='S')return 0;
    }
    do{
        cout<<"Quantidade De Concursos (  de 1 ate 200  ) ";
        cin>>Tm;
    }while( Tm < 1 || Tm > 200 );
    ja=1;ja_2=0;
    cout<<"Digite os numeros de 0 ate 99"<<endl;
    cout<<"sem teclar Enter"<<endl;
    cout<<"Concurso -:   numeros de resultados -:";
    do{
        quadro();
        gotoxy2(2,6);
        a=getche()-48;
        a*=100;
        b=getche()-48;
        a+=b*10;
        b=getche()-48;
        a+=b;
        cnc=a;
        co=7;
        for(h=0;h<6;h++){
            do{
                flag=0;
                gotoxy2(co,6);
                a=getche()-48;
                a*=10;
                b=getche()-48;
                a+=b;
                if(a < 0 || a > 99 ){
                    flag=1;
                    gotoxy2(co,6);
                    cout<<"  ";
                    gotoxy2(co,6);
                }
            }while( flag );
            co+=3;
            vet[j]=a;
            j++;
        }
        Sleep(1000);
        concurso[conc]=cnc;
        conc++;
    }while( conc < Tm );
    gotoxy2(2,9);
    Tm*=6;
}
void par_e_impar(int vet[]){
    int x,y;
    char p,ii;
    cout<<"\nInforma Cada Digito Se eh Par ou Impar\n"<<endl;
    for(j=0;j<Tm;j++){
        x=vet[j] / 10;
        y=vet[j] % 10;
        p='I';
        if(x % 2 == 0)
            p='P';
        ii='I';
        if(y % 2 == 0)
            ii='P';
        textcolor2(11,0);
        if(vet[j]<10)cout<<" "<<vet[j];
        else cout<<vet[j];
        textcolor2(7,0);
        cout<<" = ";
        textcolor2(9,14);
        cout<<" "<<p<<" "<<" "<<ii<<" "<<endl;
    }
    textcolor2(7,0);
}
void em_colunas(int vet[]){
    printf("Numeros Em Colunas\n");
    for(j=0;j<Tm;j+=2)
        printf("%3d , %3d\n",vet[j],vet[j+1]);
}
void subtracao(int vet[]){
    int num,resto;
    ja_2=1;
    printf("\n\nResultado Da Subtracao\n");
    for(j=0;j<Tm;j++){
        num       = (int)vet[j]/10;
        resto     = vet[j] % 10   ;
        if(resto  == 0)resto=10;
        if(num    == 0)num=10;
        result[j] = abs(resto - num ) ;
        printf("%3d - %3d => %3d\n",num,resto,result[j]);
    }
    for(j=0;j<Tm;j++)
        for(i=j+1;i<Tm;i++)
            if(result[j]>result){
                aux = result[j];
                result[j] = result;
                result = aux;
            }
}
void listar_impares(int vet[]){
    printf("\nLista de Numeros Impares\n\n");
    for(j=0; j<Tm; j++){
        if(vet[j]%2!= 0){
            impar++;
            printf("  %d\n",vet[j]);
        }
    }
    printf(" Total de Impares %d\n\n",impar);
}
void listar_pares(int vet[]){
    int par=0;
    printf("\nLista de Numeros Pares\n\n");
    for(j=0; j<Tm; j++){
        if(vet[j]%2==0){
            par++;
            printf("  %d\n",vet[j]);
        }
        else i++;
    }
    printf(" Total de Pares %d\n\n",par);
}
void total_pares_e_impares(int vet[]){
    if( ! ja ){cout<<"primeiro va na opcao 1"<<endl;/*return 0*/}
    else{
    if(par>impar){
        printf("Os Pares sao mais que os impares !\n");
        for(j=0;j<Tm;j++)
            if(vet[j]%2==0)printf(" %d\n",vet[j]);
    }
    else if(par<impar){
        printf("Os Impares sao mais que os Pares !\n");
        for(j=0;j<Tm;j++)
            if(vet[j]%2!=0)printf(" %d\n",vet[j]);
    }
    else printf("Os Impares e Pares Sao Iguais !");
    }
}
void desenhar_tela(){
    for(j=5;j<71;j++){
        if(j<21){gotoxy2(10, j);printf("%c",186);
                 gotoxy2(70, j);printf("%c",186);}
        if(j> 9){gotoxy2( j, 5);printf("%c",205);
                 gotoxy2( j,18);printf("%c",205);
                 gotoxy2( j,20);printf("%c",205);}
    }
    for(j=0;j<7;j++){
        gotoxy2(pos[j*3],pos[j*3+1]);
        printf("%c",pos[j*3+2]);
    }
}
void quadro(){
    int g;
    for(g=1;g<24;g++){
        gotoxy2(g,5);cout<<"\xcd";
        gotoxy2(g,7);cout<<"\xcd";
    }
    gotoxy2(2,6);
    cout<<"                          ";
    for(g=0;g<8;g++){
        gotoxy2(posi[g],6);cout<<"\xba";
        gotoxy2(posi[g],5);cout<<"\xCB";
        gotoxy2(posi[g],7);cout<<"\xCA";
    }
    gotoxy2(1 ,5);cout<<"\xC9";
    gotoxy2(1 ,7);cout<<"\xC8";
    gotoxy2(24,5);cout<<"\xBB";
    gotoxy2(24,7);cout<<"\xBC"<<endl;
}
void listar_conc(int vet[]){
    int x,y,p=0;
    cout<<"Concurso  Numeros"<<endl;
    for(x=0;x<Tm/6;x++){
        cout<<"   ";
        if(concurso[x]<100)cout<<"0";
        if(concurso[x]<10 )cout<<"0";
        cout<<concurso[x]<<" => ";
        for(y=0;y<6;y++){
            cout<<vet[p];
            if(y<5)cout<<" - ";
            p++;
        }
        cout<<endl;
    }
}
 

 

 

  • Curtir 1
  • mês depois...
Postado

@devair1010

Bom dia. Eu gostaria de implementar uma função que mostrasse acima dos resultados que o usuários digitasse se é par ou ímpar e abaixo a frequência de vezes que poderia dar esses números.

Ex:

Critério com ímpar ou par:

 

Último resultado da loteria

PP, PI,  IP,  II,  PP,  PI, PP,PI, PP

02, 03, 12, 13, 20, 21, 22,23, 24

        FREQUÊNCIA:

4¤ JOGO DA LOTERIA...

 

Será que seria possível implementar essa função aproveitando alguma coisa dos últimos códigos anteriores ou fazer um novo programa também pode ser o caminho poderiam me ajudar?

 

Preciso entregar essas funções  em Excel também Helllp me plese!

  • Obrigado 1
  • Membro VIP
Postado
Em 09/06/2019 às 02:36, Marcela da Silva de Souza disse:

@devair1010

Bom dia. Eu gostaria de implementar uma função que mostrasse acima dos resultados que o usuários digitasse se é par ou ímpar e abaixo a frequência de vezes que poderia dar esses números.

Ex:

Critério com ímpar ou par:

 

Último resultado da loteria

PP, PI,  IP,  II,  PP,  PI, PP,PI, PP

02, 03, 12, 13, 20, 21, 22,23, 24

        FREQUÊNCIA:

4¤ JOGO DA LOTERIA...

 

Será que seria possível implementar essa função aproveitando alguma coisa dos últimos códigos anteriores ou fazer um novo programa também pode ser o caminho poderiam me ajudar?

 

Preciso entregar essas funções  em Excel também Helllp me plese!

        

adicionado 9 minutos depois

#Help me please!

 

 

Criei um novo tópico para essa dúvida. Favor acessar o link abaixo:



Obs.: por enquanto esse tópico ficara fechado, caso necessário, reabrimos posteriormente. Novos acompanhamentos devem ser feito do tópico acima.

Obrigado.

  • Curtir 1
Visitante
Este tópico está impedido de receber novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

LANÇAMENTO!

eletronica2025-popup.jpg


CLIQUE AQUI E BAIXE AGORA MESMO!