Ir para conteúdo
Fórum Script Brasil

Miltonlp

Membros
  • Total de itens

    27
  • Registro em

  • Última visita

Tudo que Miltonlp postou

  1. Boa Tarde galera, sou novo aqui e estou tentando aprender Java Eu preciso fazer um programa mas estou com um problema aí vai o código class Cliente { private double desconto; public double getDesconto() { return this.desconto; } public void setDesconto(double desconto) { this.desconto = desconto; } public double Bonificacao(double desconto) { return desconto + (desconto * 0.1); } } //O Cliente Especial tem uma bonificacao a mais class ClienteEspecial { public double Bonificacao() { return desconto + (desconto * 0.2); } } //Classe com main para testar o que foi feito class TestaCliente { public static void main(String args[]) { Scanner scan = Scanner(System.in); System.out.println("1 - Cliente"); System.out.println("2 - Cliente Especial"); int op = scan.NextInt(); //Teoricamente, depois dessa linha eu poderia escolher com qual Cliente eu trabalharia, mas como faço isso sem //escrever duas vezes o mesmo código? } } Claro que é apenas um exemplo, o código que fiz está com bem mais coisas e seria cansativo instanciar as 2 classes e perguntas 2 vezes para o usuário (1 vez para Cliente e outra para ClienteEspecial) todos os atributos que precise. Também estaria trabalhando de uma forma estruturada, o que não é a intenção. Se vocês puderem me ajudar... Desde já agradeço
  2. Bom dia galera, Sou novo aqui e iniciante em programação, gostaria de pedir uma ajuda para vocês. É o seguinte, na verdade esse programa é bem mais complexo, mas a outra parte melhor deixar para uma outra hora. Tenho um trabalho na faculdade que preciso fazer o seguinte: Em um arquivo texto deve estar alguns comandos para efetuar ações dentro do programa. É um programa para manipulação de Blocos e um comando válido, por exemplo é Mover A acima B minha dúvida é a seguinte, eu tenho A e B que são valores que o usuário digita no arquivo (pode ser de 1 até 25) eu consigo ler a frase que está escrita e comparar com uma frase que eu já criei no meu programa para verificar se está do mesmo jeito, mas o problema é que não basta eu saber que o usuário digitou "Mover A acima B" eu tenho que saber qual bloco ele irá mover. Tentei através de um índice copiar o char para outra variável mas não deu certo Se alguém puder me ajudar por favor, aqui está o código que eu tentei fazer #include <stdio.h> #include <stdlib.h> #include <string.h> #include <ctype.h> #define cls system("cls") #define pause system("pause") char string[16] = "MOVER 1 ACIMA 2"; char string1[16] = "MOVER A TOPO B"; //Lê do arquivo texto a String passada int lendo() { int var; FILE *f; char s[1000]; f = fopen("teste.txt", "r"); if(!f) return 1; while(fgets(s,1000,f) != NULL) //printf("%s", s); fclose(f); //Deixa em maiúscula a String que foi lida do arquivo para que possamos //trabalhar com ela de forma que não haja diferença entre maiúscula e minus for (int i = 0; i <= strlen(s); i++) { s[i] = toupper(s[i]); } //Tentativa de comparação do valor que há nessa posição na string //Minha intenção nesse código foi comparar se a string que está no arquivo é igual a que foi declarada no começo //Se for igual, ele copia o char que está na posição 6 para a variável char, se der certo, posso trabalhar em cima dessa //variável var que recebeu o valor if (!strcmp(s, string)) { var = s[6]; printf("\n%d", var); } return 0; } main() { int op; do { cls; printf("1 - Ler conteudo do arquivo\n"); printf("2- Sair\n"); scanf("%d", &op); switch (op) { case 1: lendo(); printf("\n"); pause; write(); break; case 2: break; } }while (op != 2); } [/codebox] Consigo ler a variável corretamente mas não consigo converter esse char para um valor inteiro. Quando mando imprimir na tela mostra um valor diferente (49) quando tenho 1 na posição. Tente fazer a conversão com a função atoi, mas não deu certo. Alguém sabe uma forma aleatória de fazer isso?
×
×
  • Criar Novo...