Exercícios excelente, agora faltou algum conteúdo sobre ordenação de vetores.
19 de novembro de 2013 às 05:22
Anônimo disse...
Codigo do exercicio 1 //inclusão de bibliotecas. #include #include #define MAX 10 //tamanho do vetor, caso queira comparar mais numero altere o valor. //------------------------------------------------------------------------------
void vetor()//função sem parametro e sem retorno. { int vet[3]; int menor=10000; int cont;
for(cont=0;cont<MAX;cont++) { printf("\nInforme o %d%c valor: ",cont+1,167);//solicita o valor pro usuario. scanf("%d",&vet[cont]); if(vet[cont]<menor)//compara os valores. menor=vet[cont]; }
printf("\nO menor: %d"menor);//exibe o menor valor. } //------------------------------------------------------------------------------ main()//função principal. { vetor(); getch();//pausa o programa.
//fim do programa. }
7 de janeiro de 2014 às 06:15
Anônimo disse...
Resolução do 2º exercício
//inclusão de bibliotecas #include #include #define MAX 4
int compara_maior(int vetor1[])//função que compara maior valor digitado. { int cont; int maior=0;
for(cont=0;contmaior) maior=vetor1[cont]; } return printf("\n O maior valor eh: %d",maior); }
int compara_menor(int vetor2[])//função que compara o menor valor digitado { int cont; int menor=10000;
for(cont=0;cont<MAX;cont++) { vetor2[cont]; if(vetor2[cont]<menor) menor=vetor2[cont]; } return printf("\n O menor valor eh: %d",menor); }
int valores(int vetor[])//função que armazena os valores digitados { int cont;
for(cont=0;cont<MAX;cont++) { printf("\nInforme o %d%c valor:",cont+1,167); scanf("%d",&vetor[cont]); } }
main()//função principal. { int vetor_principal[MAX];//vetor principal.
//chamada de funções. valores(vetor_principal); compara_maior(vetor_principal); compara_menor(vetor_principal);
getch();//pausa o programa.
//fim do programa. }
8 de janeiro de 2014 às 06:02
Anônimo disse...
Detectei uma falha no código acima por favor substituir a função compara_maior por esta que esta corrigida. Obrigado a todos. att+.
int compara_maior(int vetor1[])//função que compara maior valor digitado. { int cont; int maior=0;
for(cont=0;contmaior) maior=vetor1[cont]; } return printf("\n O maior valor eh: %d",maior); }
8 de janeiro de 2014 às 15:49
Anônimo disse...
Resolução do desafio 1 quem conseguir fazer mais compacto por favor postar. att+.
#include #include
int vet1(int vetor1[]) { int cont;
for(cont=0;cont<4;cont++) { printf("\nInforme o numero %d: ",cont+1); scanf("%d",&vetor1[cont]); } }
for (i=0;i<10;i++){ cout << "\n Digite o "<> num[i]; if (num[i]>maior) maior=num[i]; if (num[i]=0;k--){ cout <<"\n"<< num[k]<<" "; } printf ("\n Maior numero: %d \n\n Menor numero: %d \n\n",maior, menor);
vlw abraço
6 de junho de 2014 às 05:53
Donizeth disse...
Resolução mais simplificada do Exercício 2:
int num[10], maior=-99999, menor=99999, i=0;
for (i=0;i<10;i++){ cout << "\n Digite o "<> num[i]; if (num[i]>maior) maior=num[i]; if (num[i]=0;k--){ cout <<"\n"<< num[k]<<" "; } printf ("\n Maior numero: %d \n\n Menor numero: %d \n\n",maior, menor);
abraço!
6 de junho de 2014 às 05:55
Anônimo disse...
Resolução simplificada do exercicio 2. O mesmo serve para o 3, só é preciso mudar o sinal de menor para maior.
#include
int main() { int i, v[10], menor;
for (i=0; i<10; i++) { scanf("%d",&v[i]); if (v[i]<v[i-1]) menor = v[i]; }
Muito Bom esse foi o melhor ate agora. Minha tentativa no Desafio 0:
/* Curso de Programação C - C Progressivo http://www.cprogressivo.net
Autor: Mauro Brito Data: 11-08-14 08:45:31 Aprendendo: C Progressivo! Plataforma Windows x86 Editor: Code::Blocks V.:13.12 */ // Programa JogoDaVelhaDOS.c
int verificar(int a, int b, char jogo[][3]){ if (jogo[a-1][b-1] == 'x' || jogo[a][b] == 'o') return 1;
return 0; } int validar(int a, int b, char c){ if (a > 3 || a < 0 || b > 3 || b < 0) return 2;
if (c != 'x' && c != 'o') return 2;
return 0; } void iniciarJogo(char jogo[][3]){ int i,j; for(i=0; i<3; i++) for(j=0; j<3; j++) jogo[i][j] = '-'; } void imprimirJogo(char jogo[][3]){ int j; printf("\n#### JOGO ATUAL ####\n"); printf(" 1 2 3\n"); for(j=0; j<3; j++) printf("%i %c %c %c\n",(j+1),jogo[j][0],jogo[j][1],jogo[j][2]); printf("\n"); } int gravar(int a, int b, char c, char jogo[][3]){ int FAIL; FAIL = validar(a,b,c); if(FAIL != 0) return FAIL;
return 0; } void MENU(char jogo[][3]){ iniciarJogo(jogo); printf("### O Jogo foi Iniciado ###\n"); int num, num2, sair; char c, cVez; cVez = 'x'; sair = 0;
do{ printf("E a vez de %c, Jogar!\nDigite sua jogada:\nExemplo.: 1 1 x\n\t ",cVez); scanf("%i",&num); scanf("%i",&num2); scanf(" %c",&c); if (num == 0 && num2 == 0) break; if(cVez == c) switch(gravar(num,num2,c,jogo)){ case 1: printf("\nJa existe marcacao na coordenada!\n"); break; case 2: printf("\nUm ou mais dados da coordenada esta errado.\nSiga o exemplo.\n"); break; default: printf("\nBoa jogada!"); if (c =='x') cVez = 'o'; else cVez = 'x'; imprimirJogo(jogo); break; } else printf("Nao e sua vez de jogar: %c \n",c);
}while(sair == 0); printf("###### GAME OVER ######"); } int main (void){ char JOGO[3][3]; MENU(JOGO);
int marcax(char tabuleiro[][DIM]) { int linha,coluna;
printf("\nJOGADOR 1\n Escolha sua posição..."); printf("\nExemplo...[linha][coluna]\n"); scanf("%d",&linha); scanf("%d",&coluna);
tabuleiro[linha -1][coluna -1] = 'x';
return tabuleiro; }
int marcao(char tabuleiro[][DIM]) { int linha, coluna;
printf("\nJOGADOR 2\n Escolha sua posição..."); printf("\nExemplo...[linha][coluna]\n"); scanf("%d",&linha); scanf("%d",&coluna);
tabuleiro[linha -1][coluna -1] = 'o';
return tabuleiro; }
12 de novembro de 2014 às 11:34
Anônimo disse...
/*Autor:Filipe Gabriel da Silva Exercicio 2 Usando em C++ *\
#include using namespace std;
main() { int a, maior=0, menor, num[10]; menor=num[0];
for(a=0; a<10; a++) { cout<<"Digite o numero do "<>num[a];
if(num[a]>maior) { maior=num[a]; } if(num[a]<=menor) { menor=num[a]; } } if((num[0<10])!=(num[0>10])) { for(a=0; a<10; a++) { if(maior==num[a]) { cout<<"\nO maior numero eh "<<maior<<" e esta no elemento:"<<a<<"\n"; } if(menor==num[a]) { cout<<"\nO menor numero eh "<<menor<<" e esta no elemento:"<<a<<"\n"; } } } else if(num[0]==num[1]==num[2]==num[3]==num[4]==num[5]==num[6]==num[7]==num[8]==num[9]) { cout<<"Sao iguais\n"; } else { for(a=0; a<10; a++) { if(maior==num[a]) { cout<<"\nO maior numero eh "<<maior<<" e esta no elemento:"<<a<<"\n"; } if(menor==num[a]) { cout<<"\nO menor numero eh "<<menor<<" e esta no elemento:"<<a<<"\n"; } } } }
10 de dezembro de 2014 às 10:37
Anônimo disse...
não é necessario adotar um valor absurdamente grande na definição de "menor" no exercício 2. Segue abaixo um jeito mais "amplo" digamos assim:
#include #include int main(){ int vetor[10], i, maior, menor, pmaior, pmenor; for (i=0; i<10; i++){ printf ("\nDigite o valor da posicao %d do vetor:\t", i); scanf ("%d", &vetor[i]); if (vetor[i]==vetor[0]){ maior=vetor[i]; menor=vetor[i]; pmaior=i; pmenor=i; } if (vetor[i]>maior){ maior=vetor[i]; pmaior=i; } if (vetor[i]<menor){ menor=vetor[i]; pmenor=i; } } printf("\n\nO maior valor do vetor e:%d\tE sua posicao e:%d\n", maior, pmaior); printf("\n\nO menor valor do vetor e:%d\tE sua posicao e:%d\n", menor, pmenor); system ("pause"); return 0; }
22 de janeiro de 2015 às 06:54
Anônimo disse...
Solução mais elegante que eu consegui do exercício 2 :)
#include #define MAX 10
void recebe(); int maior(int a,int b); int menor(int a, int b); int testemaior(); int testemenor();
int main(void) { int numero[MAX]; int Maior, Menor;
recebe(numero); Maior = testemaior(numero); Menor = testemenor(numero);
Então senhores a solução das questões[3] segue no código abaixo:
#include #define INDICE 5 /*Para alterar a quantidade numeros basta mudar o valor da constante*/ int main() { int i,maior, menor, elemento_maior=0, elemento_menor=0, x[INDICE]; for(i=0; imaior) { maior=x[i]; elemento_maior=i; } if(x[i]<menor){ menor=x[i]; elemento_menor=i; } }
printf("\nMaior: %d e esta no elemento [%d].\n", maior, elemento_maior); printf("Menor: %d e esta no elemento [%d].\n", menor, elemento_menor); return 0; }
Fiz o exercicio 5, porem a forma para faze-lo nao foi explicitada no site, pesquisei, estudei e consegui elaborar o programa, segue abaixo com explicações:
#include #include/*Necessaria para as funcoes 'rand' e 'srand'.*/ #include/*Necessaria para a funcao 'time'.*/ #define CONST 10 int main () { int a, sair=1, i, consta, posicao, num[CONST];/*declaração de variaveis*/
srand(time(NULL)); /*A função 'srand' fornecerá um valor inicial(chamado de semente) que se faz necessário para que o algoritmo interno da funcao 'rand' possa calcular os valores aleatórios.
Sem a 'srand' o valor inicial da 'rand' sempre será 1(um) gerando os mesmos valores aleatórios sempre que executarmos o programa.
A 'srand' utiliza o relógio do SO (Sistema Operacional) que você esta usando. Ela pega todos os segundos que se passaram desde a data fixa de 1 de janeiro de 1970 ate a data atual e fornece para a 'rand' como valor inicial.
Desse modo os valores aleatórios sempre irão mudar ao executarmos o programa pois serao momentos diferentes. A função 'time(NULL)' pega os segundos do relógio do SO por meio de seu algoritmo interno.*/ for(i=0; i<CONST; i++) { num[i]=rand()%100;/*A função 'rand()' nos fornece os valores aleatórios numa faixa fixa de 0(zero) ate um valor especificado pelo programador(no caso deste programa o valor é o 100(cem))*/ } while(sair==1) /*loop para o usuário tentar de novo se quiser*/ {
printf("\n Digite um numero entre 0 e 100: \n"); scanf("%d", &a); for(i=0; i<CONST; i++) { if(num[i]==a) { consta=num[i]; posicao=i; } } if(consta==a) {
printf("\n Parabens, voce acertou!"); printf("\n O numero %d esta no vetor de numero %d",a, posicao); printf("\n A sequencia aleatoria era: "); for(i=0; i<CONST; i++) { printf("%d ", num[i]); } break; } else { printf("\n Nao esta no vetor.\n"); printf("\n-----------------------------------------------------"); printf("\n Deseja tentar de novo?\n (Digite '1' para SIM ou qualquer outra tecla para sair...) "); printf("\n-----------------------------------------------------\n"); scanf("%d", &sair); } } return 0; }
14 de março de 2016 às 21:20
William Maia Dias disse...
EXE 3 ->
#include #include
/* Crie um aplicativo em C que peça um número inicial ao usuário, uma razão e calcule os termos de uma P.A (Progressão Aritmética), armazenando esses valores em um vetor de tamanho 10. */
int main () {
int vetor[10], numero, razao, i=0;
printf("Digite um numero: "); scanf("%d", &numero);
printf("\nDigite a razao: "); scanf("%d", &razao);
} printf("\nO maior numero eh %d, que esta localizado no elemento: %d\n\n",maior,elemento);
}
21 de outubro de 2016 às 10:41
Anônimo disse...
como posso fazer um programa em C que calcule varias matriz que tenha um código um menu Switch. e o usuário que escolhe o tamanho e função que deseja realizar?
RESOLUÇÃO DO EXERCICIO 5 FUNCIONANDO CORRETAMENTE. #include #include #include #define DIM 10 /*PROGRAMA CRIADO PARA REALIZAR O EXERCICIO 5 DE VETORES DA PAGINA HTTP://CPROGRESSIVO.NET. DATA: 14/06/2017 CRIADO POR: RAYLLER EMERY */
int main () { int i, numero = 0, contador = 0; char palin[TAM];
setlocale(LC_ALL, "Portuguese");
printf("- Digite um número de 4 digitos: "); gets(palin);
contador = TAM;
for (i = 0; i < TAM; i++) { if (palin[i] == palin[contador - 1]) { contador--; } } if (contador == 0) { printf("\n\nEsse(a) número/palavra é um palindromo.\n\n"); } else { printf("\n\nNão é um palindromo!\nCertifique-se de que digitou um número ou palavra de 4 digitos."); }
float main(void) { float array [LENGTH]; createArray(array); printArray(array); printf("\n\t O maior elemento e: %3.2f \n", larger(array)); system("pause"); }
float createArray (float createArrayInput []) { int counter; printf("\t Entre com os %d elementos do Array \n", LENGTH); for ( counter = 1; counter <=LENGTH; counter++ ) scanf("%f", &createArrayInput[counter]); }
float printArray (float printArrayInput []) { int counter; printf("\t Os 10 elementos do Array sao: \n"); for ( counter = 1; counter <=LENGTH; counter++ ) printf("\t Elemento %2d: %3.2f \n", counter, printArrayInput [counter]); }
// 02. Crie um programa em C que peça 10 números, armazene eles em um vetor e diga qual elemento é o maior, qual é o menor e que seus valores.
OBSERVAÇÃO: Se um dos elementos do vetor é negativo o programa funciona. Se nenhum elemento é negativo o menor numero retornado é igual a Zero (0). Alguém consegue me dizer qual o erro?
float main(void) { float array [LENGTH]; createArray(array); printArray(array); printf("\n\t O menor elemento e: %3.2f \n", smaller(array)); printf("\n\t O maior elemento e: %3.2f \n", larger(array));
system("pause"); }
float createArray (float createArrayInput []) { int counter; printf("\t Entre com os %d elementos do Array \n", LENGTH); for ( counter = 1; counter <=LENGTH; counter++ ) scanf("%f", &createArrayInput[counter]); }
float printArray (float printArrayInput []) { int counter; printf("\t Os 10 elementos do Array sao: \n"); for ( counter = 1; counter <=LENGTH; counter++ ) printf("\t Elemento %2d: %3.2f \n", counter, printArrayInput [counter]); }
02. Crie um programa em C que peça 10 números, armazene eles em um vetor e diga qual elemento é o maior, qual é o menor e que seus valores.
Alguém pode me dizer qual o problema? Acredito ser um problema com o tipo "float" ou com o comando scanf. O código em linguagem C a seguir pede ao usuário que entre com 4 números, armazena em um vetor, mostra qual o maior número e o menor número.
Quando entre os 4 números há um número negativo o programa roda bem. Quando todos os 4 números são positivos o programa não mostra o menor número, ao invés disso ele mostra o zero. Quando entro com um número decimal o programa não deixa entrar com os demais números e também não mostra o menor número.
//04. Crie um aplicativo em C que peça um número inicial ao usuário, //uma razão e calcule os termos de uma P.G (Progressão Geométrica), //armazenando esses valores em um vetor de tamanho 10.
int calculoPg (int an_NesimoTermo[], int primeiroTermo, int RAZAO);
int main(void) { int a1_primeiroTermo, razao; int an_NesimoTermo [NUMERO_DE_TERMOS]; setlocale(LC_ALL, "Portuguese"); printf("\t Calculo do n-ésimo termo de uma Progressão Geométrica"); printf("\n\n \t Entre com o primeiro termo da PG "); scanf("%d", &a1_primeiroTermo); printf(" \t Entre com a razão da PG "); scanf("%d", &razao);
int calculoPg (int an_NesimoTermoInput[], int primeiroTermo, int RAZAO) { int counter; for ( counter = 1; counter <= NUMERO_DE_TERMOS; counter++ ) { an_NesimoTermoInput [counter - 1] = primeiroTermo * pow (RAZAO, counter - 1) ; printf("\n \t O Termo numero %3d é: %3d", counter, an_NesimoTermoInput [counter - 1]); } }
30 de outubro de 2017 às 16:45
Let's Learn disse...
//05. Escreve um programa que sorteio, aleatoriamente, 10 números e // armazene estes em um vetor. //Em seguida, o usuário digita um número e seu programa em C deve acusar // se o número digitado está no vetor ou não. Se estiver, diga a posição que está.
#include #include #include #define LENGTH 10
int sortear (int vetorAleatorioInput[]); int adivinhar (int vetorSorteadoInput[] );
int main(void) { int vetorAleatorio [LENGTH]; setlocale(LC_ALL, "Portuguese"); sortear (vetorAleatorio); adivinhar (vetorAleatorio); }
int sortear (int vetorAleatorioInput[]) { int counter; srand(time(NULL)); printf("\t Sorteando 10 numeros e armazenando em um Vetor... \n"); for ( counter = 0; counter < LENGTH; counter++ ) { vetorAleatorioInput [counter] = 1+ rand() % LENGTH * 3; printf("\n\t\t O elemento %4d é: %4d", counter + 1, vetorAleatorioInput [counter]); } printf("\n"); }
int adivinhar (int vetorSorteadoInput[] ) { int tentativa, counter, tentativaFrustada = 0; printf("\n\t Tente adivinhar um dos numeros sorteados (Faixa de 1 a %4d). Tente um numero: ", LENGTH *3); scanf("%d", &tentativa); for ( counter = 0; counter < LENGTH; counter++ ) { if ( tentativa == vetorSorteadoInput [counter] ) printf("\n\t O numero %3d foi sorteado e esta armazenado na posição %3d do vetor", tentativa, counter + 1 ); else tentativaFrustada++; } if ( tentativaFrustada == LENGTH ) printf("\n\t O numero %3d não foi sorteado \n", tentativa); }
31 de outubro de 2017 às 02:31
Let's Learn disse...
//03. Crie um aplicativo em C que peça um número inicial ao usuário, //uma razão e calcule os termos de uma P.A (Progressão Aritmética), //armazenando esses valores em um vetor de tamanho 10.
int calculoPa (int an_NesimoTermo[], int primeiroTermo, int RAZAO);
int main(void) { int a1_primeiroTermo, razao; int an_NesimoTermo [NUMERO_DE_TERMOS]; setlocale(LC_ALL, "Portuguese"); printf("\t Calculo do n-ésimo termo de uma Progressão aritmética"); printf("\n\n \t Entre com o primeiro termo da PA "); scanf("%d", &a1_primeiroTermo); printf(" \t Entre com a razão da PA "); scanf("%d", &razao);
int extraiDigito_4 (const float imputNumber, float inputDigitos[4]); int extraiDigito_3 (const float imputNumber, float inputDigitos[4]); int extraiDigito_2 (const float imputNumber, float inputDigitos[4]); int extraiDigito_1 (const float imputNumber, float inputDigitos[4]); int palindromo (float inputDigitos[4]);
int main(void) { setlocale(LC_ALL, "Portuguese"); float number; float digitos[4]; do { printf("\n\t Verificando se um número é palíndromo... (Maximo de 4 digitos e deve ser positivo)\n"); printf("\t Entre com o numero a ser verificado. \n\t Ou '0' (zero) para sair "); scanf("%f", &number); if (( number < 0 ) || ( number > 9999 )) { printf("\n\n\t O Numero digitado é = %.0f \n", number); printf("\n\t O numero deve a ser positivo e com no maximo 4 digitos. \n"); printf("\t Tente de novo! \n\n"); system("pause"); system("cls || clear"); } else if (number == 0) continue; else { printf("\n\n\t O Numero digitado é = %.0f \n", number); extraiDigito_1( number, digitos ); extraiDigito_2( number, digitos ); extraiDigito_3( number, digitos ); extraiDigito_4( number, digitos ); palindromo ( digitos ); printf("\n\n"); system("pause"); system("cls || clear"); }
int palindromo (float inputDigitos[4]) { if ((inputDigitos[0] == inputDigitos[3]) && (inputDigitos[1] == inputDigitos[2])) printf("\n\t O número é palíndromo."); else if ((inputDigitos[0] == 0) && (inputDigitos[1] == inputDigitos[3])) printf("\n\t O número é palíndromo."); else if ((inputDigitos[0] == 0) && (inputDigitos[0] == 0) && (inputDigitos[2] == inputDigitos[3])) printf("\n\t O número é palíndromo."); else printf("\n\t O número NÂO é palíndromo. \n\n"); }
12 de novembro de 2017 às 12:15
Guilherme disse...
Resolução desafio 1 em c.
#include #include #include
int main(){ int numero, i = 10, aux = 1, tamanho = 1;
printf("Digite um numero:\n"); scanf("%i",&numero); // encontrando o tamanho do número while(i == pow(10,tamanho)){ if( (numero/i) >= 10){ i = i * 10; tamanho++; }else{ tamanho++; } } // transformando o numero em um vetor int vet[tamanho];
for(int j=0;j<tamanho;j++){ vet[j] = numero/i; numero = numero%i; i = i/10; }
//verificando se é palindromo for(int j=0;j<(tamanho/2);j++){ if(vet[j] != vet[(tamanho-1)-j]) aux = 0; }
if(aux){ printf("O numero e palindromo"); }else{ printf("O numero nao e palindromo"); }
return 0; }
26 de agosto de 2020 às 13:39
Agora que já estudou tudo sobre os vetores (também conhecido por arrays) e matrizes (também conhecidas como vetores multidimensionais) em linguagem C, está na hora de treinar nossos conhecimentos.
Embora exista várias maneiras de resolver os exercícios a seguir, tente resolver usando vetores.
Aproveite para testar a boa prática de programação: divida as funções de modo que cada uma delas faça uma coisa específica. Use sempre funções, deixe sua main() a mais limpa possível.
Como obter certificação em C
Leia esse conteúdo Offline: Apostila C Progressivo
Exercícios sobre vetores (arrays) e Matriz em C
Desafio 0: Criando um tabuleiro de Jogo da Velha
Crie um tabuleiro de jogo da velha, usando uma matrizes de caracteres (char) 3x3, onde o usuário pede o número da linha (1 até 3) e o da coluna (1 até 3). A cada vez que o usuário entrar com esses dados, colocar um 'X' ou 'O' no local selecionado.
Desafio 1: Como criar um programa que checa se o número é palíndromo
Número palíndromo é aquele que, se lido de trás para frente e de frete para trás, é o mesmo.
Exemplos: 2112, 666, 2442 etc
Dica: extraia os dígitos, coloque cada dígito do número em um vetor e faça a comparação dos números (primeiro com o último, segundo com o penúltimo, terceiro com o anti-penúltimo etc).
O número deve ter 4 dígitos.
postado por Programação Progressiva às 18:28 em 7 de mar. de 2013
39 Comentários
Fechar esta janela Ir para formulário de comentárioExercícios excelente, agora faltou algum conteúdo sobre ordenação de vetores.
19 de novembro de 2013 às 05:22
Codigo do exercicio 1
//inclusão de bibliotecas.
#include
#include
#define MAX 10 //tamanho do vetor, caso queira comparar mais numero altere o valor.
//------------------------------------------------------------------------------
void vetor()//função sem parametro e sem retorno.
{
int vet[3];
int menor=10000;
int cont;
for(cont=0;cont<MAX;cont++)
{
printf("\nInforme o %d%c valor: ",cont+1,167);//solicita o valor pro usuario.
scanf("%d",&vet[cont]);
if(vet[cont]<menor)//compara os valores.
menor=vet[cont];
}
printf("\nO menor: %d"menor);//exibe o menor valor.
}
//------------------------------------------------------------------------------
main()//função principal.
{
vetor();
getch();//pausa o programa.
//fim do programa.
}
7 de janeiro de 2014 às 06:15
Resolução do 2º exercício
//inclusão de bibliotecas
#include
#include
#define MAX 4
int compara_maior(int vetor1[])//função que compara maior valor digitado.
{
int cont;
int maior=0;
for(cont=0;contmaior)
maior=vetor1[cont];
}
return printf("\n O maior valor eh: %d",maior);
}
int compara_menor(int vetor2[])//função que compara o menor valor digitado
{
int cont;
int menor=10000;
for(cont=0;cont<MAX;cont++)
{
vetor2[cont];
if(vetor2[cont]<menor)
menor=vetor2[cont];
}
return printf("\n O menor valor eh: %d",menor);
}
int valores(int vetor[])//função que armazena os valores digitados
{
int cont;
for(cont=0;cont<MAX;cont++)
{
printf("\nInforme o %d%c valor:",cont+1,167);
scanf("%d",&vetor[cont]);
}
}
main()//função principal.
{
int vetor_principal[MAX];//vetor principal.
//chamada de funções.
valores(vetor_principal);
compara_maior(vetor_principal);
compara_menor(vetor_principal);
getch();//pausa o programa.
//fim do programa.
}
8 de janeiro de 2014 às 06:02
Detectei uma falha no código acima
por favor substituir a função compara_maior por esta que esta corrigida.
Obrigado a todos.
att+.
int compara_maior(int vetor1[])//função que compara maior valor digitado.
{
int cont;
int maior=0;
for(cont=0;contmaior)
maior=vetor1[cont];
}
return printf("\n O maior valor eh: %d",maior);
}
8 de janeiro de 2014 às 15:49
Resolução do desafio 1 quem conseguir fazer mais compacto por favor postar.
att+.
#include
#include
int vet1(int vetor1[])
{
int cont;
for(cont=0;cont<4;cont++)
{
printf("\nInforme o numero %d: ",cont+1);
scanf("%d",&vetor1[cont]);
}
}
int compara(int vetor2[])
{
int cont;
for(cont=0;cont<4;cont++)
{
vetor2[cont];
}
if(vetor2[0]==vetor2[3] && vetor2[1]==vetor2[2] && vetor2[2]==vetor2[1])
return printf("\nPalindromo");
else
return printf("\nNao eh palindromo");
}
main()
{
char op='s';
int vetor_principal[TAM];
do{
system("cls");
vet1(vetor_principal);
compara(vetor_principal);
printf("\nDeseja verificar outro numero? Sim[s]Nao[n]");
op=getch();
}while(op=='s');
}
10 de janeiro de 2014 às 06:36
Olá, sou iniciante e gostaria de saber se tem a resolução dos exercicios pois estou com um pouco de dificuldade. Obrigada
22 de fevereiro de 2014 às 08:14
desafio 1, com 4 dígitos, como pede...
#include
#include
int v[100],i;
int main()
{
printf("entre com o numero, ele deve ter 4 digitos\n");
for(i=0;i<4;i++)
scanf("%d",&v[i]);
if(v[0]==v[3])
{
if(v[1]==v[2])
printf("o numero eh palindromo");
}
else
printf("o numero nao eh palindromo");
}
9 de março de 2014 às 11:54
Resolução do exercício 2 mais simples:
int num[10], maior=-99999, menor=99999, i=0;
for (i=0;i<10;i++){
cout << "\n Digite o "<> num[i];
if (num[i]>maior)
maior=num[i];
if (num[i]=0;k--){
cout <<"\n"<< num[k]<<" ";
}
printf ("\n Maior numero: %d \n\n Menor numero: %d \n\n",maior, menor);
vlw abraço
6 de junho de 2014 às 05:53
Resolução mais simplificada do Exercício 2:
int num[10], maior=-99999, menor=99999, i=0;
for (i=0;i<10;i++){
cout << "\n Digite o "<> num[i];
if (num[i]>maior)
maior=num[i];
if (num[i]=0;k--){
cout <<"\n"<< num[k]<<" ";
}
printf ("\n Maior numero: %d \n\n Menor numero: %d \n\n",maior, menor);
abraço!
6 de junho de 2014 às 05:55
Resolução simplificada do exercicio 2. O mesmo serve para o 3, só é preciso mudar o sinal de menor para maior.
#include
int main()
{
int i, v[10], menor;
for (i=0; i<10; i++)
{
scanf("%d",&v[i]);
if (v[i]<v[i-1])
menor = v[i];
}
printf("Menor: %d",menor);
return 0;
}
12 de julho de 2014 às 20:42
Muito Bom esse foi o melhor ate agora. Minha tentativa no Desafio 0:
/* Curso de Programação C - C Progressivo
http://www.cprogressivo.net
Autor: Mauro Brito
Data: 11-08-14 08:45:31
Aprendendo: C Progressivo!
Plataforma Windows x86
Editor: Code::Blocks V.:13.12 */
// Programa JogoDaVelhaDOS.c
int verificar(int a, int b, char jogo[][3]){
if (jogo[a-1][b-1] == 'x' || jogo[a][b] == 'o')
return 1;
return 0;
}
int validar(int a, int b, char c){
if (a > 3 || a < 0 || b > 3 || b < 0)
return 2;
if (c != 'x' && c != 'o')
return 2;
return 0;
}
void iniciarJogo(char jogo[][3]){
int i,j;
for(i=0; i<3; i++)
for(j=0; j<3; j++)
jogo[i][j] = '-';
}
void imprimirJogo(char jogo[][3]){
int j;
printf("\n#### JOGO ATUAL ####\n");
printf(" 1 2 3\n");
for(j=0; j<3; j++)
printf("%i %c %c %c\n",(j+1),jogo[j][0],jogo[j][1],jogo[j][2]);
printf("\n");
}
int gravar(int a, int b, char c, char jogo[][3]){
int FAIL;
FAIL = validar(a,b,c);
if(FAIL != 0) return FAIL;
FAIL = verificar(a,b,jogo);
if(FAIL != 0) return FAIL;
//gravando...
jogo[a-1][b-1] = c;
//gravando...
return 0;
}
void MENU(char jogo[][3]){
iniciarJogo(jogo);
printf("### O Jogo foi Iniciado ###\n");
int num, num2, sair;
char c, cVez;
cVez = 'x';
sair = 0;
do{
printf("E a vez de %c, Jogar!\nDigite sua jogada:\nExemplo.: 1 1 x\n\t ",cVez);
scanf("%i",&num);
scanf("%i",&num2);
scanf(" %c",&c);
if (num == 0 && num2 == 0) break;
if(cVez == c)
switch(gravar(num,num2,c,jogo)){
case 1:
printf("\nJa existe marcacao na coordenada!\n");
break;
case 2:
printf("\nUm ou mais dados da coordenada esta errado.\nSiga o exemplo.\n");
break;
default:
printf("\nBoa jogada!");
if (c =='x') cVez = 'o';
else cVez = 'x';
imprimirJogo(jogo);
break;
}
else printf("Nao e sua vez de jogar: %c \n",c);
}while(sair == 0);
printf("###### GAME OVER ######");
}
int main (void){
char JOGO[3][3];
MENU(JOGO);
return 0;
}
15 de agosto de 2014 às 20:00
algem sabe a resolução do exercicio 5
23 de setembro de 2014 às 07:08
#include
#define DIM 3
void exibe(char tabuleiro[][DIM]);
int marcax(char tabuleiro[][DIM]);
int marcao(char tabuleiro[][DIM]);
int main(void)
{
char tabuleiro[DIM][DIM]={{'.','.','.'},{'.','.','.'},{'.','.','.'}};
exibe(tabuleiro);
marcax(tabuleiro);
exibe(tabuleiro);
marcao(tabuleiro);
exibe(tabuleiro);
marcax(tabuleiro);
exibe(tabuleiro);
marcao(tabuleiro);
exibe(tabuleiro);
marcax(tabuleiro);
exibe(tabuleiro);
marcao(tabuleiro);
exibe(tabuleiro);
marcax(tabuleiro);
exibe(tabuleiro);
marcao(tabuleiro);
exibe(tabuleiro);
marcax(tabuleiro);
exibe(tabuleiro);
printf("\nEND GAME");
}
void exibe(char tabuleiro[][DIM])
{
int coluna, linha;
printf("\n");
for(linha=0;linha<DIM;linha++)
{
for(coluna=0;coluna<DIM;coluna++)
printf(" %3c",tabuleiro[linha][coluna]);
printf("\n\n");
}
}
int marcax(char tabuleiro[][DIM])
{
int linha,coluna;
printf("\nJOGADOR 1\n Escolha sua posição...");
printf("\nExemplo...[linha][coluna]\n");
scanf("%d",&linha);
scanf("%d",&coluna);
tabuleiro[linha -1][coluna -1] = 'x';
return tabuleiro;
}
int marcao(char tabuleiro[][DIM])
{
int linha, coluna;
printf("\nJOGADOR 2\n Escolha sua posição...");
printf("\nExemplo...[linha][coluna]\n");
scanf("%d",&linha);
scanf("%d",&coluna);
tabuleiro[linha -1][coluna -1] = 'o';
return tabuleiro;
}
12 de novembro de 2014 às 11:34
/*Autor:Filipe Gabriel da Silva
Exercicio 2
Usando em C++
*\
#include
using namespace std;
main()
{
int a, maior=0, menor, num[10];
menor=num[0];
for(a=0; a<10; a++)
{
cout<<"Digite o numero do "<>num[a];
if(num[a]>maior)
{
maior=num[a];
}
if(num[a]<=menor)
{
menor=num[a];
}
}
if((num[0<10])!=(num[0>10]))
{
for(a=0; a<10; a++)
{
if(maior==num[a])
{
cout<<"\nO maior numero eh "<<maior<<" e esta no elemento:"<<a<<"\n";
}
if(menor==num[a])
{
cout<<"\nO menor numero eh "<<menor<<" e esta no elemento:"<<a<<"\n";
}
}
}
else if(num[0]==num[1]==num[2]==num[3]==num[4]==num[5]==num[6]==num[7]==num[8]==num[9])
{
cout<<"Sao iguais\n";
}
else
{
for(a=0; a<10; a++)
{
if(maior==num[a])
{
cout<<"\nO maior numero eh "<<maior<<" e esta no elemento:"<<a<<"\n";
}
if(menor==num[a])
{
cout<<"\nO menor numero eh "<<menor<<" e esta no elemento:"<<a<<"\n";
}
}
}
}
10 de dezembro de 2014 às 10:37
não é necessario adotar um valor absurdamente grande na definição de "menor" no exercício 2. Segue abaixo um jeito mais "amplo" digamos assim:
#include
#include
int main(){
int vetor[10], i, maior, menor, pmaior, pmenor;
for (i=0; i<10; i++){
printf ("\nDigite o valor da posicao %d do vetor:\t", i);
scanf ("%d", &vetor[i]);
if (vetor[i]==vetor[0]){
maior=vetor[i];
menor=vetor[i];
pmaior=i;
pmenor=i;
}
if (vetor[i]>maior){
maior=vetor[i];
pmaior=i;
}
if (vetor[i]<menor){
menor=vetor[i];
pmenor=i;
}
}
printf("\n\nO maior valor do vetor e:%d\tE sua posicao e:%d\n", maior, pmaior);
printf("\n\nO menor valor do vetor e:%d\tE sua posicao e:%d\n", menor, pmenor);
system ("pause");
return 0;
}
22 de janeiro de 2015 às 06:54
Solução mais elegante que eu consegui do exercício 2 :)
#include
#define MAX 10
void recebe();
int maior(int a,int b);
int menor(int a, int b);
int testemaior();
int testemenor();
int main(void)
{
int numero[MAX];
int Maior, Menor;
recebe(numero);
Maior = testemaior(numero);
Menor = testemenor(numero);
printf("maior: %d\n",Maior);
printf("menor: %d\n",Menor);
}
int maior(int a , int b)
{
if(a > b)
return a;
else
return b;
}
int menor(int a , int b)
{
if(a < b)
return a;
else
return b;
}
void recebe(int numero[])
{
int cont;
for(cont = 0 ; cont < MAX ; cont++)
{
printf("Insira o numero %d: ",cont+1);
scanf("%d",&numero[cont]);
}
printf("\n");
}
int testemaior(int numero[])
{
int cont;
int Maior;
Maior = maior(numero[0],numero[1]);
for(cont = 0 ; cont < MAX ; cont++)
{
Maior = maior(numero[cont],Maior);
}
return Maior;
}
int testemenor(int numero[])
{
int cont;
int Menor;
Menor = menor(numero[0],numero[1]);
for(cont = 0 ; cont < MAX ; cont++)
{
Menor = menor(numero[cont],Menor);
}
return Menor;
}
6 de agosto de 2015 às 17:09
Desafio 0, jogo da velha.. Sou amador. mas deu certo!!!kkk!!!
#include
#include
#include
void main(void)
{
do {
char escolha, tabuleiro[3][5], jogadas[3][3];
int limite = 0, i, j, k, linha, coluna, jog = 0, vitoria = 0;
//inicializando vetores
for (i = 0; i < 3; i++)
{
for (j = 0; j < 3; j++)
{
jogadas[i][j] = NULL;
}
}
for (i = 0; i < 3; i++)
{
for (j = 0; j < 5; j++)
{
tabuleiro[i][j] = NULL;
}
}
do{
do {
system("cls");
//imprimindo tabuleiro
for (i = 0; i < 3; i++)
{
for (j = 1; j < 5; j += 2)
{
tabuleiro[i][j] = '|';
}
}
for (i = 0; i < 3; i++)
{
printf(" ");
for (j = 0; j < 5; j++)
{
printf("%c", tabuleiro[i][j]);
}
printf("\n");
}
//Capturando jogada
if (jog == 0)
{
printf("\n Player 1 ('X'):\n");
escolha = 1;
}
else
{
printf("\n Player 2 ('O'):\n");
escolha = 2;
}
printf(" Insira a linha: ");
scanf("%d", &linha);
printf(" Insira a coluna: ");
scanf("%d", &coluna);
system("cls");
}while(jogadas[linha - 1][coluna - 1] != NULL);
if (jogadas[linha - 1][coluna - 1] == NULL)
{
if(jog == 0)
{jog=1;}
else{jog=0;}
switch (escolha)
{
case 1:
jogadas[linha - 1][coluna - 1] = 'X';
break;
case 2:
jogadas[linha - 1][coluna - 1] = 'O';
break;
}
}
else
{
printf("Tente denovo!..\n");
}
for (i = 0; i < 3; i++)
{
k = 0;
for (j = 0; j < 5; j += 2)
{
tabuleiro[i][j] = jogadas[i][k];
k++;
}
printf("\n");
}
for (i = 0; i < 3 && !vitoria; i++)
{
if (jogadas[linha - 1][coluna - 1] == jogadas[i][0] && jogadas[i][0] == jogadas[i][1] && jogadas[i][1] == jogadas[i][2])
{
vitoria = 1;
}
else if (jogadas[linha - 1][coluna - 1] == jogadas[0][i] && jogadas[0][i] == jogadas[1][i] && jogadas[1][i] == jogadas[2][i])
{
vitoria = 1;
}
else if (jogadas[linha - 1][coluna - 1] == jogadas[0][0] && jogadas[0][0] == jogadas[1][1] && jogadas[1][1] == jogadas[2][2])
{
vitoria = 1;
}
else if (jogadas[linha - 1][coluna - 1] == jogadas[0][2] && jogadas[0][2] == jogadas[1][1] && jogadas[1][1] == jogadas[2][0])
{
vitoria = 1;
}
}
limite++;
} while (vitoria == 0 && limite < 9);
system("cls");
for (i = 0; i < 3; i++)
{
printf(" ");
for (j = 0; j < 5; j++)
{
printf("%c", tabuleiro[i][j]);
}
printf("\n");
}
printf("\n");
if(vitoria == 0)
{ printf("\n Empate\n"); }
else if (jogadas[linha - 1][coluna - 1] == ('X'))
{
printf("\n Vitoria Player 1 !!!\n");
}
else if (jogadas[linha - 1][coluna - 1] == ('O'))
{
printf("\ nVitoria Player 2!!!\n");
}
printf("\nPrecione 'q' para sair ou 'Enter' para continuar...\n");
getchar();
}while (getchar() != 'q');
}
1 de novembro de 2015 às 16:46
Então senhores a solução das questões[3] segue no código abaixo:
#include
#define INDICE 5 /*Para alterar a quantidade numeros basta mudar o valor da constante*/
int main()
{
int i,maior, menor, elemento_maior=0, elemento_menor=0, x[INDICE];
for(i=0; imaior)
{
maior=x[i];
elemento_maior=i;
}
if(x[i]<menor){
menor=x[i];
elemento_menor=i;
}
}
printf("\nMaior: %d e esta no elemento [%d].\n", maior, elemento_maior);
printf("Menor: %d e esta no elemento [%d].\n", menor, elemento_menor);
return 0;
}
13 de março de 2016 às 12:24
Fiz o exercicio 5, porem a forma para faze-lo nao foi explicitada no site, pesquisei, estudei e consegui elaborar o programa, segue abaixo com explicações:
#include
#include/*Necessaria para as funcoes 'rand' e 'srand'.*/
#include/*Necessaria para a funcao 'time'.*/
#define CONST 10
int main ()
{
int a, sair=1, i, consta, posicao, num[CONST];/*declaração de variaveis*/
srand(time(NULL));
/*A função 'srand' fornecerá um valor inicial(chamado de semente) que se faz necessário para
que o algoritmo interno da funcao 'rand' possa calcular os valores aleatórios.
Sem a 'srand' o valor inicial da 'rand' sempre será 1(um) gerando os mesmos valores aleatórios
sempre que executarmos o programa.
A 'srand' utiliza o relógio do SO (Sistema Operacional) que você esta usando. Ela pega todos os segundos
que se passaram desde a data fixa de 1 de janeiro de 1970 ate a data atual e fornece para a 'rand'
como valor inicial.
Desse modo os valores aleatórios sempre irão mudar ao executarmos o programa
pois serao momentos diferentes. A função 'time(NULL)' pega os segundos do relógio do SO por meio de
seu algoritmo interno.*/
for(i=0; i<CONST; i++)
{
num[i]=rand()%100;/*A função 'rand()' nos fornece os valores aleatórios numa faixa fixa de
0(zero) ate um valor especificado pelo programador(no caso deste programa o valor é o 100(cem))*/
}
while(sair==1) /*loop para o usuário tentar de novo se quiser*/
{
printf("\n Digite um numero entre 0 e 100: \n");
scanf("%d", &a);
for(i=0; i<CONST; i++)
{
if(num[i]==a)
{
consta=num[i];
posicao=i;
}
}
if(consta==a)
{
printf("\n Parabens, voce acertou!");
printf("\n O numero %d esta no vetor de numero %d",a, posicao);
printf("\n A sequencia aleatoria era: ");
for(i=0; i<CONST; i++)
{
printf("%d ", num[i]);
}
break;
}
else
{
printf("\n Nao esta no vetor.\n");
printf("\n-----------------------------------------------------");
printf("\n Deseja tentar de novo?\n (Digite '1' para SIM ou qualquer outra tecla para sair...) ");
printf("\n-----------------------------------------------------\n");
scanf("%d", &sair);
}
}
return 0;
}
14 de março de 2016 às 21:20
EXE 3 ->
#include
#include
/* Crie um aplicativo em C que peça um número inicial ao usuário, uma
razão e calcule os termos de uma P.A (Progressão Aritmética),
armazenando esses valores em um vetor de tamanho 10. */
int main () {
int vetor[10], numero, razao, i=0;
printf("Digite um numero: ");
scanf("%d", &numero);
printf("\nDigite a razao: ");
scanf("%d", &razao);
vetor[i] = numero;
printf("\n");
for(i = 0; i < 10; i++){
vetor[i+1] = vetor[i] + razao;
}
printf("-PROGRESSAO ARITIMETICA-");
for (i = 0; i < 10; i++){
printf("\n%d", vetor[i]);
}
system ("pause");
return 0;
}
8 de maio de 2016 às 14:43
fiz em c# o desafio 1;
static void Main(string[] args)
{
int[] valores = new int[4];
int[] temp = new int[4];
int count = 0;
for(int i=0; i<4; i++)
{
Console.WriteLine("Digite o {0} numero", i + 1);
valores[i] = Convert.ToInt32(Console.ReadLine());
}
for(int i=3; i>-1; i--)
{
temp[count] = valores[i];
count++;
}
Boolean verificar = true;
for(int i=0; i<4; i++)
{
if (valores[i] != temp[i])
{
verificar = false;
break;
}
}
Console.WriteLine(verificar ? "Numero é palindromo" : "Numero nao é palindromo");
Console.ReadLine();
}
7 de agosto de 2016 às 07:40
Ae, finalmente consegui o exercicio 0 de maneira satisfatória:
#include
#define TOTAL 10
int recebenumero(int a[TOTAL]);
int verifica_numero(int a[TOTAL]);
int main()
{
int numeros[TOTAL];
printf("Digite 10 numeros diferentes:\n\n");
recebenumero(numeros);
verifica_numero(numeros);
return 0;
}
int recebenumero(int a[TOTAL])
{
int count;
for(count=0 ; count<TOTAL ; count++)
{
printf("Numero %d: ",1+count);
scanf("%d",&a[count]);
}
}
int verifica_numero(int a[TOTAL])
{
int maior,elemento,count=0,linha=0;
maior=a[count];
for(count,linha; count<TOTAL ; count++,linha++)
{
if(maior<a[linha])
maior=a[linha],elemento=1+linha;
else
continue;
}
printf("\nO maior numero eh %d, que esta localizado no elemento: %d\n\n",maior,elemento);
}
21 de outubro de 2016 às 10:41
como posso fazer um programa em C que calcule varias matriz que tenha um código um menu Switch. e o usuário que escolhe o tamanho e função que deseja realizar?
22 de novembro de 2016 às 16:23
// Exercício 5
#include
#include
#include
#define DIM 10
void sorteio(int vetor[]){
int i;
srand((unsigned) time (NULL));
for(i = 0; i < DIM; i++){
vetor[i] = rand() % 101;
}
}
void tentativas(int vetor[]){
int numero,i,continuar=1;
while(continuar){
printf("Digite um número: ");
scanf("%d",&numero);
for(i = 0; i < DIM; i++){
if(numero == vetor[i]){
printf("o número digitado está no vetor: %d\n", i);
continuar = 0;
break;
}
}
}
}
int main(){
int vetor[DIM];
sorteio(vetor);
tentativas(vetor);
return 0;
}
11 de março de 2017 às 07:10
Este comentário foi removido pelo autor.
8 de junho de 2017 às 09:11
RESOLUÇÃO DO EXERCICIO 5 FUNCIONANDO CORRETAMENTE.
#include
#include
#include
#define DIM 10
/*PROGRAMA CRIADO PARA REALIZAR O EXERCICIO 5 DE VETORES
DA PAGINA HTTP://CPROGRESSIVO.NET.
DATA: 14/06/2017
CRIADO POR: RAYLLER EMERY
*/
void vetores(int numeros[]){
int count;
srand((unsigned)time(NULL));
for(count = 0; count < DIM; count++){
numeros[count] = 1 + (rand()%50);
}
}
void testar(int numeros[]){
int n, count;
do{
printf("Digite seu numero: ");
scanf("%d", &n);
for(count = 0; count < DIM; count++){
getchar();
system("cls||clean");
if(n == numeros[count]){
printf("Voce acertou meu querido!\n");
printf("Seu numero: %d\n\n", n);
printf("Numero do vetor %d: %d\n\n", count, numeros[count]);
break;
}
else{
printf("Voce errou!\n");
printf("Seu numero: %d\n\n", n);
printf("Numero do vetor %d: %d\n\n", count, numeros[count]);
}
}
getchar();
system("cls||clean");
}while(numeros[count] != n);
}
int main (){
int numeros[DIM];
vetores(numeros);
testar(numeros);
return 0;
}
14 de junho de 2017 às 05:20
Questão 5:
#include < stdio.h >
#include < stdlib.h >
#include < time.h >
#include < locale.h >
#define TAM 10
int main () {
int i, vet[TAM], aposta = 0, conta = 0;
setlocale(LC_ALL, "Portuguese");
srand((unsigned) time (NULL));
for (i = 0; i < TAM; i++) {
vet[i] = (1 + rand() % 20);
}
printf("\t LOTERIA\n\n");
printf("- Digite sua aposta, um número de 1 a 20:");
scanf("%d", &aposta);
for (i = 0; i < TAM; i++) {
if (vet[i] == aposta) {
printf("\n\nNa %dª posição", i + 1);
conta++;
}
}
if (conta > 0) {
printf("\n\nSua aposta foi sorteada %d vez(es)!\n\n", conta);
} else {
printf("\n\nSua aposta não foi sorteada.\n\n");
}
system("pause");
return 0;
}
7 de agosto de 2017 às 17:00
Desafio 1:
#include < stdio.h >
#include < stdlib.h >
#include < locale.h >
#define TAM 4
int main () {
int i, numero = 0, contador = 0;
char palin[TAM];
setlocale(LC_ALL, "Portuguese");
printf("- Digite um número de 4 digitos: ");
gets(palin);
contador = TAM;
for (i = 0; i < TAM; i++) {
if (palin[i] == palin[contador - 1]) {
contador--;
}
}
if (contador == 0) {
printf("\n\nEsse(a) número/palavra é um palindromo.\n\n");
} else {
printf("\n\nNão é um palindromo!\nCertifique-se de que digitou um número ou palavra de 4 digitos.");
}
system("pause");
return 0;
}
GitHub: github.com/MarcosAndre5/Palindromo/blob/master/Palindromo.c
20 de agosto de 2017 às 14:03
Desafio 0:
Resposta: github.com/MarcosAndre5/PreencerJogoDaVelha/blob/master/PreencerJogoDaVelha.c
20 de agosto de 2017 às 14:06
Exercício 3 resposta!
#include
int main(){
int vet[10];
int r, i;
printf("Digite o primeiro valor e digite a razao\n");
scanf("%d %d", &vet[0], &r);
for(i=0; i<9; i++){
vet[i+1] = vet[i] + r;
printf("%d , ", vet[i]);
}
}
29 de setembro de 2017 às 19:33
// 00. Crie um programa em C que peça 10 números, armazene eles em um vetor e diga qual elemento é o maior, e seu valor.
#include
#define LENGTH 4
float createArray (float createArrayInput []);
float printArray (float printArrayInput []);
float larger (float Array []);
float main(void)
{
float array [LENGTH];
createArray(array);
printArray(array);
printf("\n\t O maior elemento e: %3.2f \n", larger(array));
system("pause");
}
float createArray (float createArrayInput [])
{
int counter;
printf("\t Entre com os %d elementos do Array \n", LENGTH);
for ( counter = 1; counter <=LENGTH; counter++ )
scanf("%f", &createArrayInput[counter]);
}
float printArray (float printArrayInput [])
{
int counter;
printf("\t Os 10 elementos do Array sao: \n");
for ( counter = 1; counter <=LENGTH; counter++ )
printf("\t Elemento %2d: %3.2f \n", counter, printArrayInput [counter]);
}
float larger (float Array [])
{
int counter, larger;
larger = Array [0];
for ( counter = 1; counter <=LENGTH; counter++ )
if ( Array[counter] > larger )
larger = Array[counter];
return larger;
}
30 de outubro de 2017 às 09:25
// 02. Crie um programa em C que peça 10 números, armazene eles em um vetor e diga qual elemento é o maior, qual é o menor e que seus valores.
OBSERVAÇÃO: Se um dos elementos do vetor é negativo o programa funciona.
Se nenhum elemento é negativo o menor numero retornado é igual a Zero (0).
Alguém consegue me dizer qual o erro?
#include
#define LENGTH 4
float createArray (float createArrayInput []);
float printArray (float printArrayInput []);
float smaller (float Array []);
float larger (float Array []);
float main(void)
{
float array [LENGTH];
createArray(array);
printArray(array);
printf("\n\t O menor elemento e: %3.2f \n", smaller(array));
printf("\n\t O maior elemento e: %3.2f \n", larger(array));
system("pause");
}
float createArray (float createArrayInput [])
{
int counter;
printf("\t Entre com os %d elementos do Array \n", LENGTH);
for ( counter = 1; counter <=LENGTH; counter++ )
scanf("%f", &createArrayInput[counter]);
}
float printArray (float printArrayInput [])
{
int counter;
printf("\t Os 10 elementos do Array sao: \n");
for ( counter = 1; counter <=LENGTH; counter++ )
printf("\t Elemento %2d: %3.2f \n", counter, printArrayInput [counter]);
}
float smaller (float Array [])
{
int counter;
float smaller;
smaller = Array [0];
for ( counter = 1; counter <=LENGTH; counter++ )
{
if ( Array[counter] < smaller )
smaller = Array[counter];
}
return smaller;
}
float larger (float Array [])
{
int counter;
float larger;
larger = Array [0];
for ( counter = 1; counter <=LENGTH; counter++ )
if ( Array[counter] > larger )
larger = Array[counter];
return larger;
}
30 de outubro de 2017 às 09:54
02. Crie um programa em C que peça 10 números, armazene eles em um vetor e diga qual elemento é o maior, qual é o menor e que seus valores.
Alguém pode me dizer qual o problema? Acredito ser um problema com o tipo "float" ou com o comando scanf.
O código em linguagem C a seguir pede ao usuário que entre com 4 números, armazena em um vetor, mostra qual o maior número e o menor número.
Quando entre os 4 números há um número negativo o programa roda bem.
Quando todos os 4 números são positivos o programa não mostra o menor número, ao invés disso ele mostra o zero.
Quando entro com um número decimal o programa não deixa entrar com os demais números e também não mostra o menor número.
#include
#include
#define LENGTH 4
float createArray (float createArrayInput []);
float printArray (float printArrayInput []);
float smaller (float Array []);
float larger (float Array []);
float main(void)
{
setlocale(LC_ALL, "Portuguese");
float array [LENGTH];
createArray(array);
printArray(array);
printf("\n\t O menor elemento é: %3.2f \n", smaller(array));
printf("\n\t O maior elemento é: %3.2f \n\n", larger(array));
system("pause");
}
float createArray (float createArrayInput [])
{
int counter;
printf("\t Entre com os %d elementos do Array \n", LENGTH);
for ( counter = 1; counter <= LENGTH; counter++ )
{
printf("\t \t");
scanf(" %f", &createArrayInput[counter]);
}
}
float printArray (float printArrayInput [])
{
int counter;
printf("\n \t Os 10 elementos do Array são: \n\n");
for ( counter = 1; counter <= LENGTH; counter++ )
printf("\t Elemento %2d: %3.2f \n", counter, printArrayInput [counter]);
}
float smaller (float Array [])
{
int counter;
float smaller;
smaller = Array [0];
for ( counter = 1; counter <= LENGTH; counter++ )
{
if ( Array[counter] < smaller )
smaller = Array[counter];
}
return smaller;
}
float larger (float Array [])
{
int counter;
float larger;
larger = Array [0];
for ( counter = 1; counter <= LENGTH; counter++ )
if ( Array[counter] > larger )
larger = Array[counter];
return larger;
}
30 de outubro de 2017 às 14:11
//04. Crie um aplicativo em C que peça um número inicial ao usuário,
//uma razão e calcule os termos de uma P.G (Progressão Geométrica),
//armazenando esses valores em um vetor de tamanho 10.
//https://pt.wikipedia.org/wiki/Progress%C3%A3o_geom%C3%A9trica
#include
#include
#include
#define NUMERO_DE_TERMOS 10
int calculoPg (int an_NesimoTermo[], int primeiroTermo, int RAZAO);
int main(void)
{
int a1_primeiroTermo, razao;
int an_NesimoTermo [NUMERO_DE_TERMOS];
setlocale(LC_ALL, "Portuguese");
printf("\t Calculo do n-ésimo termo de uma Progressão Geométrica");
printf("\n\n \t Entre com o primeiro termo da PG ");
scanf("%d", &a1_primeiroTermo);
printf(" \t Entre com a razão da PG ");
scanf("%d", &razao);
calculoPg(an_NesimoTermo, a1_primeiroTermo, razao);
printf("\n\n");
}
int calculoPg (int an_NesimoTermoInput[], int primeiroTermo, int RAZAO)
{
int counter;
for ( counter = 1; counter <= NUMERO_DE_TERMOS; counter++ )
{
an_NesimoTermoInput [counter - 1] = primeiroTermo * pow (RAZAO, counter - 1) ;
printf("\n \t O Termo numero %3d é: %3d", counter, an_NesimoTermoInput [counter - 1]);
}
}
30 de outubro de 2017 às 16:45
//05. Escreve um programa que sorteio, aleatoriamente, 10 números e
// armazene estes em um vetor.
//Em seguida, o usuário digita um número e seu programa em C deve acusar
// se o número digitado está no vetor ou não. Se estiver, diga a posição que está.
#include
#include
#include
#define LENGTH 10
int sortear (int vetorAleatorioInput[]);
int adivinhar (int vetorSorteadoInput[] );
int main(void)
{
int vetorAleatorio [LENGTH];
setlocale(LC_ALL, "Portuguese");
sortear (vetorAleatorio);
adivinhar (vetorAleatorio);
}
int sortear (int vetorAleatorioInput[])
{
int counter;
srand(time(NULL));
printf("\t Sorteando 10 numeros e armazenando em um Vetor... \n");
for ( counter = 0; counter < LENGTH; counter++ )
{
vetorAleatorioInput [counter] = 1+ rand() % LENGTH * 3;
printf("\n\t\t O elemento %4d é: %4d", counter + 1, vetorAleatorioInput [counter]);
}
printf("\n");
}
int adivinhar (int vetorSorteadoInput[] )
{
int tentativa, counter, tentativaFrustada = 0;
printf("\n\t Tente adivinhar um dos numeros sorteados (Faixa de 1 a %4d). Tente um numero: ", LENGTH *3);
scanf("%d", &tentativa);
for ( counter = 0; counter < LENGTH; counter++ )
{
if ( tentativa == vetorSorteadoInput [counter] )
printf("\n\t O numero %3d foi sorteado e esta armazenado na posição %3d do vetor", tentativa, counter + 1 );
else
tentativaFrustada++;
}
if ( tentativaFrustada == LENGTH )
printf("\n\t O numero %3d não foi sorteado \n", tentativa);
}
31 de outubro de 2017 às 02:31
//03. Crie um aplicativo em C que peça um número inicial ao usuário,
//uma razão e calcule os termos de uma P.A (Progressão Aritmética),
//armazenando esses valores em um vetor de tamanho 10.
//https://pt.wikipedia.org/wiki/Progress%C3%A3o_aritm%C3%A9tica
#include
#include
#define NUMERO_DE_TERMOS 10
int calculoPa (int an_NesimoTermo[], int primeiroTermo, int RAZAO);
int main(void)
{
int a1_primeiroTermo, razao;
int an_NesimoTermo [NUMERO_DE_TERMOS];
setlocale(LC_ALL, "Portuguese");
printf("\t Calculo do n-ésimo termo de uma Progressão aritmética");
printf("\n\n \t Entre com o primeiro termo da PA ");
scanf("%d", &a1_primeiroTermo);
printf(" \t Entre com a razão da PA ");
scanf("%d", &razao);
calculoPa(an_NesimoTermo, a1_primeiroTermo, razao);
printf("\n\n");
}
int calculoPa (int an_NesimoTermoInput[], int primeiroTermo, int RAZAO)
{
int counter;
for ( counter = 1; counter <= NUMERO_DE_TERMOS; counter++ )
{
an_NesimoTermoInput [counter - 1] = primeiroTermo + (counter - 1) * RAZAO;
printf("\n \t O Termo numero %3d é: %3d", counter, an_NesimoTermoInput [counter - 1]);
}
}
31 de outubro de 2017 às 16:47
// 02. Crie um programa em C que peça 10 números, armazene eles em um vetor e diga qual elemento é o maior, qual é o menor e que seus valores.
#include
#include
#define LENGTH 4
float createArray (float createArrayInput []);
float printArray (float printArrayInput []);
float smaller (float Array []);
float larger (float Array []);
float main(void)
{
setlocale(LC_ALL, "Portuguese");
float array [LENGTH];
createArray(array);
printArray(array);
printf("\n\t O menor elemento é: %3.2f \n", smaller(array));
printf("\n\t O maior elemento é: %3.2f \n\n", larger(array));
system("pause");
}
float createArray (float createArrayInput [])
{
int counter;
printf("\t Entre com os %d elementos do Array \n", LENGTH);
for ( counter = 0; counter < LENGTH; counter++ )
{
printf("\t \t");
scanf(" %f", &createArrayInput[counter]);
}
}
float printArray (float printArrayInput [])
{
int counter;
printf("\n \t Os 10 elementos do Array são: \n\n");
for ( counter = 0; counter < LENGTH; counter++ )
printf("\t Elemento %2d: %3.2f \n", counter, printArrayInput [counter]);
}
float smaller (float Array [])
{
int counter;
float smaller;
smaller = Array [0];
for ( counter = 0; counter < LENGTH; counter++ )
{
if ( Array[counter] < smaller )
smaller = Array[counter];
}
return smaller;
}
float larger (float Array [])
{
int counter;
float larger;
larger = Array [0];
for ( counter = 0; counter < LENGTH; counter++ )
if ( Array[counter] > larger )
larger = Array[counter];
return larger;
}
31 de outubro de 2017 às 16:52
/*Desafio 1: Como criar um programa que checa se o número é palíndromo
Autor: "Let's learn"
Tue Nov 12 20:12:41 2017
#include stdio.h
#include locale.h
#include time.h */
#include
#include
#include
int extraiDigito_4 (const float imputNumber, float inputDigitos[4]);
int extraiDigito_3 (const float imputNumber, float inputDigitos[4]);
int extraiDigito_2 (const float imputNumber, float inputDigitos[4]);
int extraiDigito_1 (const float imputNumber, float inputDigitos[4]);
int palindromo (float inputDigitos[4]);
int main(void)
{
setlocale(LC_ALL, "Portuguese");
float number;
float digitos[4];
do
{
printf("\n\t Verificando se um número é palíndromo... (Maximo de 4 digitos e deve ser positivo)\n");
printf("\t Entre com o numero a ser verificado. \n\t Ou '0' (zero) para sair ");
scanf("%f", &number);
if (( number < 0 ) || ( number > 9999 ))
{
printf("\n\n\t O Numero digitado é = %.0f \n", number);
printf("\n\t O numero deve a ser positivo e com no maximo 4 digitos. \n");
printf("\t Tente de novo! \n\n");
system("pause");
system("cls || clear");
}
else if (number == 0)
continue;
else
{
printf("\n\n\t O Numero digitado é = %.0f \n", number);
extraiDigito_1( number, digitos );
extraiDigito_2( number, digitos );
extraiDigito_3( number, digitos );
extraiDigito_4( number, digitos );
palindromo ( digitos );
printf("\n\n");
system("pause");
system("cls || clear");
}
}while (number != 0);
}
int extraiDigito_4 (const float imputNumber, float inputDigitos[4])
{
inputDigitos[3] = ((imputNumber/10) - floor(imputNumber/10))*10;
printf("\n\t Digito 4 = %.0f \n", inputDigitos[3] );
}
int extraiDigito_3 (const float imputNumber, float inputDigitos[4])
{
inputDigitos[2] = floor(((imputNumber/100) - floor(imputNumber/100))*10);
printf("\n\t Digito 3 = %.0f", inputDigitos[2] );
}
int extraiDigito_2 (const float imputNumber, float inputDigitos[4])
{
printf("\n\n Extraindo Digito 2...");
printf("\n imputNumber = %f", imputNumber);
printf("\n (imputNumber/1000) = %f", (imputNumber/1000));
printf("\n (floor(imputNumber/1000)) = %f", floor(imputNumber/1000));
printf("\n (((imputNumber/1000) - floor(imputNumber/1000))*10) = %f", (((imputNumber/1000) - floor(imputNumber/1000))*10));
printf("\n floor(((imputNumber/1000) - floor(imputNumber/1000))*10) = %f", floor(((imputNumber/1000) - floor(imputNumber/1000))*10));
printf("\n floor (2.0) = %f", floor (2.0) );
printf("\n ((1.2 - 1)*10) = %f", ((1.2 - 1)*10) );
printf("\n floor ((1.2 - 1)*10) = %f", floor((1.2 - 1)*10) );
inputDigitos[1] = floor(((imputNumber/1000) - floor(imputNumber/1000))*10);
printf("\n\n\t Digito 2 = %.0f", inputDigitos[1] );
}
int extraiDigito_1 (const float imputNumber, float inputDigitos[4])
{
inputDigitos[0] = floor(((imputNumber/10000) - floor(imputNumber/10000))*10);
printf("\n\t Digito 1 = %.0f", inputDigitos[0] );
}
int palindromo (float inputDigitos[4])
{
if ((inputDigitos[0] == inputDigitos[3]) && (inputDigitos[1] == inputDigitos[2]))
printf("\n\t O número é palíndromo.");
else if ((inputDigitos[0] == 0) && (inputDigitos[1] == inputDigitos[3]))
printf("\n\t O número é palíndromo.");
else if ((inputDigitos[0] == 0) && (inputDigitos[0] == 0) && (inputDigitos[2] == inputDigitos[3]))
printf("\n\t O número é palíndromo.");
else
printf("\n\t O número NÂO é palíndromo. \n\n");
}
12 de novembro de 2017 às 12:15
Resolução desafio 1 em c.
#include
#include
#include
int main(){
int numero,
i = 10,
aux = 1,
tamanho = 1;
printf("Digite um numero:\n");
scanf("%i",&numero);
// encontrando o tamanho do número
while(i == pow(10,tamanho)){
if( (numero/i) >= 10){
i = i * 10;
tamanho++;
}else{
tamanho++;
}
}
// transformando o numero em um vetor
int vet[tamanho];
for(int j=0;j<tamanho;j++){
vet[j] = numero/i;
numero = numero%i;
i = i/10;
}
//verificando se é palindromo
for(int j=0;j<(tamanho/2);j++){
if(vet[j] != vet[(tamanho-1)-j]) aux = 0;
}
if(aux){
printf("O numero e palindromo");
}else{
printf("O numero nao e palindromo");
}
return 0;
}
26 de agosto de 2020 às 13:39