Ir para conteúdo
Fórum Script Brasil

Mateus Fontanini

Membros
  • Total de itens

    5
  • Registro em

  • Última visita

Tudo que Mateus Fontanini postou

  1. O programa propoe que o usuario digite uma data (data da compra), e ele só irá ser vip se ele gastar 5000,00 na loja antes dos 6 meses, fiz todo o código, entretanto não estou conseguindo fazer a verificação da data, alguém pode me ajudar? O enunciando inteiro segue abaixo, para quem quiser entender melhor: 18. Uma loja de eletrodomésticos está fazendo uma promoção entre seus 15 mil clientes. Todos os clientes que gastarem mais de R$ 5.000,00 em compras passarão a ser considerados clientes vip, tendo 15% de desconto em todas as suas compras posteriores. Esse valor é cumulativo, mas precisa atingir R$ 5.000,00 dentro de seis meses a partir da primeira compra ou será zerado. Faça um programa que: a) cadastre os clientes dessa loja. Para cada cliente devem ser cadastrados: nome do cliente, CPF, RG, endereço, data da primeira compra, total gasto desde sua primeira compra e um campo que diz se o cliente é vip ou não. O campo que guarda o total gasto pelo cliente deve sempre iniciar com zero, e o campo em que diz se o cliente é vip deve começar como FALSO; B) atualize o total gasto por determinado cliente. Deve-se ler um RG e, caso este seja encontrado na lista de clientes, deve-se entrar com um novo valor que atualizará o campo total gasto por esse cliente. Depois de entrar com o novo total gasto, deve-se fazer um teste para verificar se o valor chegou a R$ 5.000,00. Em caso positivo, o cliente passará a ser vip. Esse teste só será realizado caso o cliente ainda não seja vip; Meu código: #include <iostream> #include <string.h> #include <stdio.h> #include <stdlib.h> #define tam 1 using namespace std; struct cadastro { char cliente [50]; char cpf[11]; char rg[9]; char endereco[50]; char data[11]; int total; bool vip; }; int main() { cadastro vet[tam]; int i; char rg[9]; char data[11]; float compra,a,b; char vetor[2]; char mes[3]; strncat(mes, __DATE__ , 3); cout << mes; if (strcmp(mes,"Jun")==0){ b=06; cout << b; } for (i=0; i<tam; i++) { cout << "Digite o nome do cliente "; gets(vet.cliente); cout << "\nDigite o cpf "; gets(vet.cpf); cout<<"\n Digite o rg "; gets(vet.rg); cout << "\nDigite o endereco "; gets(vet.endereco); cout << "\nDigite a data da primeira compra"; gets(vet.data); vet.total=0; vet.vip = false; } cout << "\n\n\n"; cout <<"Digite o rg que deseja procurar"; fgets(rg,9,stdin); for (i=0; i<tam; i++) { if (strcmp(rg,vet.rg)==0) { if (vet.total >5000) { cout << "Digite o valor da nova compra:"; cin >> compra; compra = compra*0.85; vet.total=vet.total+compra; }else{ strcpy(data,vet.data); vetor[0]=data[3]; vetor[1]=data[4]; a = atoi (vetor); cout <<"Digite o valor da nova compra"; cin >> compra; vet.total=vet.total+compra; if(vet.total>5000) { if(vet.vip==false) { } } } } } return 0; } Obrigado!
  2. aHHH entendi gente! Obrigado! Deu certo agora! :)
  3. O código é esse: #include <iostream> #include <string.h> #include <stdio.h> #define tam 3 using namespace std; struct habitantes { char sexo[2]; int altura; int idade; char olhos[2]; }; int main() { int i,media; media = 0; habitantes vet[tam]; for (i=0; i<tam; i++) { cout << " Digite o sexo :"; gets (vet.sexo); cout <<"\n"; cout << "Digite a altura"; cin >> vet.altura; fflush(stdin); cout << "Digite a idade"; cin >> vet.idade; fflush(stdin); cout << "Digite os olhos:"; gets(vet.olhos); cout << vet.olhos; if (vet.olhos=='c') { cout << vet.idade; cout << "entrei"; media = media + vet.idade; } } cout << media; cout << "Hello world!" << endl; return 0; } Tá dando o seguinte erro: ISO C++ forbids comparison between pointer Se eu colo =="c", funciona, mas nunca entra no for! alguém pode me ajudar? Obrigado!!
  4. Gente, foi proposto pelo meu professor, o seguinte exercicio: BÔNUS: (Simulação: a tartaruga e a lebre) Neste problema, você recriará a clássica corrida da tartaruga e da lebre. Você utilizará geração de números aleatórios para desenvolver uma simulação desse memorável evento. Nossos competidores começam a corrida no quadrado 1 de 70 quadrados. Cada quadrado representa uma possível posição ao longo do percurso da competição. A linha de chegada está no quadrado 70. O primeiro competidor a alcançar ou passar o quadrado 70 é recompensado com um cesto de cenouras frescas e alface. O percurso envolve subir uma montanha escorregadia, então ocasionalmente os competidores perdem terreno. Um relógio emite um tique por segundo. A cada tique do relógio, seu aplicativo deve ajustar a posição dos animais de acordo com as regras na Utilize variáveis para monitorar a posição dos animais (isto é, os números de posição são 1-70). Inicie cada animal na posição 1 (a 'partida'). Se um animal escorregar para a esquerda do quadrado 1, mova-o novamente para o quadrado 1. Gere as percentagens da tabela abaixo, produzindo um inteiro aleatório i no intervalo 1 <= i <= 10. Para a tartaruga, realize uma 'caminhada rápida' quando 1 <= i <= 5, um 'escorregão' quando 6 <= i <= 7 ou uma 'caminhada lenta' quando 8 <= i <= 10. Utilize uma técnica semelhante para mover a lebre. Comece a corrida exibindo BANG !!!!! A corrida começou !!!!! Então, para cada tique do relógio (istó é, para cada repetição de um loop), exiba uma linha de 70 posições mostrando a letra T na posição da tartaruga e a letra L na posição da lebre. Ocasionalmente os competidores aterrisarão no mesmo quadrado. Nesse caso, a tartaruga morde a lebre e seu aplicativo deve exibir AI!!! começando nessa posição. Todas as outras posições de saída diferentes de T, L ou AI!!! (no caso de um empate) devem estar em branco. Depois de cada linha a ser exibida, teste se o animal alcançou o quadrado 70. Se tiver alcançado, exiba o vencedor e termine a aplicação. Se a tartaruga ganhar, exiba A TARTARUGA VENCEU!!!é!!! Se a lebre ganhar, exiba A LEBRE GANHOU. OH! Se as duas ganharem na mesma hora, você pode querer favorecer a tartaruga (a 'coitadinha') ou pode querer exibir OCORREU UM EMPATE. Se nenhum animal ganhar, realize o loop novamente para simular o próximo tique do relógio. Quando você estiver pronto para executar seu aplicativo, monte um grupo de fãs para observar a corrida. Você se surpreenderá com a empolgação da sua audiência! ANIMAL Tipo de movimento % do tempo Movimento Real Tartaruga Caminhada rápida 50% 3 quadrados à direita Escorregão 20% 6 quadrados à esquerda Caminhada lenta 30% 1 quadrados à direita Lebre Dormir 20% Nenhum movimento Salto grande 20% 9 quadrados à direita Escorregão grande 10% 12 quadrados à esquerda Salto pequeno 30% 1 quadrados à direita Escorregão pequeno 20% 2 quadrados à esquerda Consegui fazê-lo, entretanto, meu professor quer que a cada passo que a LEBRE ou a Tartaruga de, apague o seu passo anterior, mas não estou conseguindo fazer! Alguém pode me ajudar? Obrigado!!! Meu programa ficou: #include <iostream> #include <stdio.h> #include <stdlib.h> #include <time.h> #include <windows.h> using namespace std; #define CHEGADA 70 void gotoxy(int x, int y) { SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE),(COORD) { x-1,y-1 }); } int main(void) { cout << " 333333333 " << endl; cout << " 333 " << endl; cout << " 333 " << endl; cout << " 333333333 " << endl; cout << " 333 " << endl; cout << " 333 " << endl; cout << " 333333333 " << endl; Sleep(400); system("cls"); cout << " 222222222 " << endl; cout << " 222 " << endl; cout << " 222 " << endl; cout << " 222222222 " << endl; cout << " 222 " << endl; cout << " 222 " << endl; cout << " 222222222 " << endl; Sleep(400); system("cls"); cout << " 1111 " << endl; cout << " 11 111 " << endl; cout << " 11 111 " << endl; cout << " 111 " << endl; cout << " 111 " << endl; cout << " 111 " << endl; cout << " 111 " << endl; Sleep(400); system("cls"); cout << " BBBBBBBB AAAAAAAAAAA NNN NN GGGGGGGGGGG " << endl; cout << " B B A A NN N NN G " << endl; cout << " B B A A NN N NN G " << endl; cout << " B B A A NN N NN G " << endl; cout << " BBBBBBB AAAAAAAAAAA NN N NN GGGGGGGGGGG " << endl; cout << " B B AAAAAAAAAAA NN N NN G G " << endl; cout << " B B A A NN N NN G G " << endl; cout << " B B A A NN N NN G G " << endl; cout << " BBBBBB A A NN NNNN GGGGGGGGGGG " << endl; Sleep(1000); system("cls"); gotoxy(28,3); cout << " O jogo começou!!!"; gotoxy(1,6); cout <<"-----------------------------------------------------------------------------\n"; gotoxy(1,10); cout <<"-----------------------------------------------------------------------------\n"; char linha1[70]; char linha2[70]; int moveT, moveL; int contT=0, contL=0; while (contT<70 && contL<70) { if(contT==0) { gotoxy(1,8); linha1[contT]='T'; // inicia a tartaruga cout << (linha1[contT]); moveT=rand()%100; Sleep(1000); }else{ gotoxy (contT,8); linha1[contT]='T'; // inicia a tartaruga cout << (linha1[contT]); linha1[contT]=' '; // limpa posiçao apos exibir moveT=rand()%100; Sleep(1000); } if (moveT==0||moveT==1) contT=contT-6; else if (moveT==2||moveT==3||moveT==4) contT=contT+1; else contT=contT+3; if (contT<0) contT=0; // termina verificação da tartaruga if (contL==0){ gotoxy(1,8); linha2[contL]='L'; // inicia lebre cout << (linha2[contL]); linha2[contL]=' '; // limpa posição moveL= rand()%100; Sleep(1000); } else{ gotoxy(contL,8); linha2[contL]='L'; // inicia lebre cout << (linha2[contL]); linha2[contL]=' '; // limpa posição moveL= rand()%100; Sleep(1000); } if (moveL==0) // escorregao grande contL=contL-12; else if (moveL==1||moveL==2) //domindo contL=contL; else if (moveL==3||moveL==4) //salto grande contL=contL+9; else if (moveL==5||moveL==6)//escorregao pequeno contL=contL-2; else contL=contL+1; if (contL<0) contL=0; //termina lebre } //fim laço while gotoxy(10,20); if (contT>=70) cout << ("A tartaruga vence!!!"); else if (contL>=70) cout <<("A Lebre vence!!!"); else cout <<("Empate"); } Consegui fazê-lo, entretanto, meu professor quer que a cada passo que a LEBRE ou a Tartaruga de, apague o seu passo anterior, mas não estou conseguindo fazer! Alguém pode me ajudar? Obrigado!!!
  5. Gente, tenho uma lista de 25 exercicios de String para Resolver e não consegui resolver esses 3: 4) Faça um programa que receba uma frase, calcule e mostre o numero de palavras digitadas. Entretanto, antes de contar as palavras da frase, esta deverá passar pelas seguintes correções: a) Eliminar Espaços em Brancos antes da frase; b ) Eliminar Espaços em Brancos depois da frase; c) Eliminar Espaços duplicados entre as palavras; 12)Faça um vetor que receba uma data no formato 'DD/MM/AAAA', trocar o MM pelo o seu respectivo nome. Ex: 10/03/2012 = 10/março/2012; 23)Faça um programa que receba uma cadeia de caracteres e uma subcadeia(Lembrando que a subcadeia deve ser menos que a cadeia). Determine e mostre quantas vezes a subcadeia apareceu: Ex: abbcdefbbj -- Subcadeia: bb; A subcadeia apareceu 2 vezes; Obrigado pela atenção!!
×
×
  • Criar Novo...