Wagnesio - Challenge 1 - C

Ir em baixo

Wagnesio - Challenge 1 - C

Mensagem  Wagnesio em Ter Jul 05, 2011 12:46 am

Challenge 1.1

 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
/*  Testado na Plataforma Linux
Feito em C
*/
#include <stdio.h>

int main(){
int i, maior, numero[5];

//Leitura dos numeros
printf("Digite 5 numeros (separados por virgula): ");
scanf("%d,%d,%d,%d,%d",&numero[0],&numero[1],&numero[2],&numero[3],&numero[4]);
getchar();


//Verificação do Maior
maior = numero[0];
for(i=1; i<5; i++)
if (numero[i] > maior) maior=numero[i];


//Apresentação do Maior Numero
printf("O maior número é %d. \n",maior);
return 0;
}



Challenge 1.2

 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
/*  Testado na Plataforma Linux
Feito em C
*/
#include <stdio.h>

int main(){
int i, maior, numero[5];

//Leitura dos numeros
printf("Digite 5 numeros (separados por espaço): ");
scanf("%d %d %d %d %d",&numero[0],&numero[1],&numero[2],&numero[3],&numero[4]);

//Verifica qual o maior numero
maior = numero[0];
for(i=1; i<5; i++)
if (numero[i] > maior) maior=numero[i];

//Imprime na tela o resultado
printf("O maior número é %d. \n",maior);
return 0;
}


Challenge 1.3

 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
/*  Testado na Plataforma Linux
Feito em C
*/
#include <stdio.h>

int main(){
char opcao;

//Leitura da opcao
printf("Digite 'M' para masculino ou 'F' para feminino: ");
opcao = getchar();

//Analisa a opção
switch (opcao){
//Caso Seja F
case 'F':
case 'f':
printf("Feminino. \n");
break
//caso seja M
case 'M':
case 'm':
printf("Masculino. \n");
break;
//Caso não seja F nem M
default:
printf("Sexo inválido. \n");
}

return 0;
}


Challenge 1.4

 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
/*  Testado na Plataforma Linux
Feito em C
*/
#include <stdio.h>
#include <ctype.h>

int main(){
char letra;

//Leitura dos dados
printf("Digite a letra: ");
scanf("%c",&letra);
letra = toupper(letra); //Eliminação do Case-Sensitive

//Caso seja vogal
if (letra=='A' || letra=='E' || letra=='I' || letra=='O' || letra=='U' ) printf ("'%c' é vogal. \n",letra);
//Caso não seja vogal
else printf ("'%c' não é vogal. \n",letra);

return 0;
}


Challenge 1.5

 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
/*  Testado na Plataforma Linux
Feito em C
*/
#include <stdio.h>

int main(){
float GanhoHora,HorasTrabalhadas;

//Entrada de Dados
printf("Quanto você ganha por hora? RS");
scanf("%f",&GanhoHora);
getchar(); //Limpa o buffer de entrada

//Entrada de Dados
printf("Quantas horas você trabalha no mês? ");
scanf("%f",&HorasTrabalhadas);

//Resultado
printf("Salário do mês = RS%.2f \n",GanhoHora * HorasTrabalhadas);
return 0;
}


Challenge 1.6

 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
/*  Testado na Plataforma Linux
Feito em C
*/
#include <stdio.h>

#define metroLitro 3
#define litroLata 18
#define precoLata 95.0

int main(){
float areaPintada=-1,temp, precoTotal, litrosUsados;
int numeroLatas=0, count=0;

//Entrada de Dados, não aceita área negativa
while(areaPintada<0){
printf("Quantos metros quadrados a área a ser pintada tem? ");
scanf("%f",&areaPintada);
if (areaPintada<0) printf("Valor inválido.");
}

//Calculo da Quantidade de litros que será usado
temp = litrosUsados = areaPintada / metroLitro;

//Calculo da quantidade de Latas que deverão ser compradas
while(temp>0){
count++;
if (count==litroLata) {
numeroLatas++;
count=0;
}
temp--;
}
if (count || (temp!=0)) numeroLatas++;

//Calculo do preço total
precoTotal = numeroLatas*precoLata;

//Apresentação do Resultado
printf("\n");
printf("Você precisará comprar %d latas. \n",numeroLatas);
printf("O total a ser gasto é %.2f reais \n",precoTotal);
return 0;
}


avatar
Wagnesio

Mensagens : 4
Data de inscrição : 04/07/2011

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Wagnesio

Mensagem  Z3r0 em Ter Jul 05, 2011 11:35 am

Seja bem vindo ao Challenge.
Gostei dos teus códigos, da documentação e principalmente de algumas alternativas que você resolveu seguir. Me refiro ao desafio 3 em especifico. Você poderia traçar o caminho da maioria apenas se limitando ao H, M que na verdade é a proposta original.

Mas achei bacana você ter ousado e pensado em usar também minúscula uma vez que aplicado à indústria, seria necessário usar este recurso ou algum outro alertando que não aceita h,m minúsculo para estipular sexo. A única observação a este desafio 3, é quanto ao switch - case. Num todo, é recomendável evita-lo para reduzir sintax e também porque ele em sí é bem limitado. Mas não está errado.
avatar
Z3r0

Mensagens : 149
Data de inscrição : 01/07/2011
Idade : 32

Ver perfil do usuário http://projectzim.blogspot.com

Voltar ao Topo Ir em baixo

Re: Wagnesio - Challenge 1 - C

Mensagem  Z3r0 em Ter Jul 05, 2011 11:36 am

AH.. outra coisa que não poderia deixar passar.
Gostei de ler o Testado na Plataforma Linux. Ao que me parece, tem bastante usuário Linux por aqui ...isso está se tornando cada vez mais interessante.
avatar
Z3r0

Mensagens : 149
Data de inscrição : 01/07/2011
Idade : 32

Ver perfil do usuário http://projectzim.blogspot.com

Voltar ao Topo Ir em baixo

Re: Wagnesio - Challenge 1 - C

Mensagem  Z3r0 em Qua Jul 06, 2011 1:26 pm

Wagnesio escreveu:Challenge 1.1

 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
/*  Testado na Plataforma Linux
Feito em C
*/
#include <stdio.h>

int main(){
int i, maior, numero[5];

//Leitura dos numeros
printf("Digite 5 numeros (separados por virgula): ");
scanf("%d,%d,%d,%d,%d",&numero[0],&numero[1],&numero[2],&numero[3],&numero[4]);
getchar();


//Verificação do Maior
maior = numero[0];
for(i=1; i<5; i++)
if (numero[i] > maior) maior=numero[i];


//Apresentação do Maior Numero
printf("O maior número é %d. \n",maior);
return 0;
}




Uma pergunta ...qual a função do getchar(); nessa solução? tenho a impressão de que...sem ele, funciona da mesma maneira... ou não?
avatar
Z3r0

Mensagens : 149
Data de inscrição : 01/07/2011
Idade : 32

Ver perfil do usuário http://projectzim.blogspot.com

Voltar ao Topo Ir em baixo

Re: Wagnesio - Challenge 1 - C

Mensagem  Wagnesio em Qua Jul 06, 2011 1:59 pm

Z3r0 escreveu:Challenge 1.1
Uma pergunta ...qual a função do getchar(); nessa solução? tenho a impressão de que...sem ele, funciona da mesma maneira... ou não?
É mais por costume mesmo de limpar o buffer de entrada. Mas funciona da mesma forma, já que o programa não faz mas nenhuma leitura via teclado (stdin).
avatar
Wagnesio

Mensagens : 4
Data de inscrição : 04/07/2011

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Re: Wagnesio - Challenge 1 - C

Mensagem  Conteúdo patrocinado


Conteúdo patrocinado


Voltar ao Topo Ir em baixo

Voltar ao Topo

- Tópicos similares

 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum