Ir ao conteúdo
  • Cadastre-se

C# Desconto sobre tamanho de roupas.


Posts recomendados

Meu objetivo era criar um programa que recebe o tamanho P, M ou G.

Pega o Valor e da desconto conforme o tamanho.

P= 30% 

M= 20% 

G= 10%

 

 

Acho que estou com problemas em armazenar a variável.

porque mesmo quando está tudo falso ela não apresenta o "preço" na variável else.

 

Desculpa pela foto, estou sem internet kk.

 

 

Não sei porque se eu colocar o preço antes do tamanho não  funciona também, alguém sabe me explicar porque?

 

IMG-20190306-WA0002.jpg

Link para o comentário
Compartilhar em outros sites

Obrigado Deu certo.

Funcionou para as variáveis declaradas .

 

Porém se eu coloco um valor diferente das variáveis"p m g" não consigo inserir o valor.

Ela pula direto pra condição "Else".

 

E se eu inverto para inserir o "preço" primeiro não consigo inserir o tamanho.

 

Teria como eu declarar algo para condição falsa de PMG  e ele continuar executando o programa.

Link para o comentário
Compartilhar em outros sites

Consegui inserir, 

Porém se eu coloco qualquer variável "p m g " seguido de outra letra exemplo "GG" ele considera a 1 como variável. Executa como se fosse 'g'

 

E se eu insiro uma qualquer exemplo "f" 

No final não aparece o valor inserido em "preço".

 

Tentei criar uma variável

a= p,m,g,P,M,G;

E uma

Else If( tamanho != 'a')

Só que não deu certo, continua na mesma.

Link para o comentário
Compartilhar em outros sites

Atualmente está assim:

#include <iostream>
#include <stdio.h>
#include <stdlib.h>
#include <math.h>

using namespace std;

int main(int argc, char *argv[])
{
    char tamanho;
    float preco;
    float P, p;
    float M, m;
    float G, g;
    float a;

    printf("insira o preço da sua camiseta. E aperte ENTER. \n""Depois insira o tamanho da camiseta. P, M ou G. \n");
    scanf("%f\n" , &preco);
    scanf("%c" , &tamanho);


    P = preco - (preco * 0.3);
    M = preco - (preco * 0.2);
    G = preco - (preco * 0.1);
    a = p,P,G,g,M,m;
    if(tamanho == 'P' || tamanho == 'p'){
        printf("O preço da camiseta será de: %f\n", +P);
    }else if(tamanho == 'M' || tamanho == 'm'){
        printf("O preço da camiseta será de: %f\n", +M);
    }else if(tamanho == 'G' || tamanho == 'g'){
        printf("O preço da camiseta será de: %f\n", +G);
    }else if(tamanho != 'a'){
        printf("Não temos descono para esse tamanho.\n O preço da camiseta será de: ", +preco );
    }
    system("pause");
    return 0;
}

 

adicionado 2 minutos depois

porém não deu certo isso de eu fazer else if (tamnho !=a)

 

entao eu voltei essa linha

 }else if(tamanho != 'a'){
        printf("Não temos descono para esse tamanho.\n O preço da camiseta será de: ", +preco );
    }

 

para

 }else{
        printf("Não temos descono para esse tamanho.\n O preço da camiseta será de: ", +preco );
    }

e deletei

 

float a;

 

a = p,P,G,g,M,m;

Link para o comentário
Compartilhar em outros sites

Alterei seu código para permitir a entrada de mais de um letra (ex.: GG). você dev trabalha com strings e usar a função strcmp para comparar os valores. Ela retornar zero se os strings são iguais.

#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <string.h>


using namespace std;

int main(int argc, char *argv[])
{
	char tamanho[3];
	float preco;
	float P;
	float M;
	float G;


	printf("insira o preço da sua camiseta. E aperte ENTER. \n""Depois insira o tamanho da camiseta. P, M ou G. \n");
	scanf("%f\n", &preco);
	scanf("%s", &tamanho);


	P = preco - (preco * 0.3);
	M = preco - (preco * 0.2);
	G = preco - (preco * 0.1);

	if (!strcmp(tamanho, "P") || !strcmp(tamanho, "p")) {
		printf("O preço da camiseta será de: %f\n", +P);
	}
	else if (!strcmp(tamanho, "M") || !strcmp(tamanho,"m")) {
		printf("O preço da camiseta será de: %f\n", +M);
	}
	else if (!strcmp(tamanho,"G") || !strcmp(tamanho, "g")) {
		printf("O preço da camiseta será de: %f\n", +G);
	}
	else {
		printf("Não temos descono para esse tamanho.\n O preço da camiseta será de: %f", +preco);
	}
	system("pause");
	return 0;
}

você pode adicionar um desconto para GG agora também:

float GG;
GG = preco - (preco * 0.05);

else if (!strcmp(tamanho, "GG") || !strcmp(tamanho,"gg")) {
		printf("O preço da camiseta será de: %f\n", +GG);
	}

 

  • Obrigado 1
Link para o comentário
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

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...

 

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!