Buscar

Exercícios - Linguagem C

Galera não estou conseguindo resolver essas QUESTÕES:

1- Escreva um programa que encontre o menor inteiro positivo n que satisfaça as seguintes condições: 

n/3 = x inteiros e resto 2 
n/5 = y inteiros e resto 3
n/7 = z inteiros e resto  4.

2- Escreva um algoritmo que crie um número aleatório x por meio da função rand(). O algoritmo deve solicitar um número n ao usuário e compará-lo com x. Se n for menor que x, o programa deverá imprimir “Muito pequeno” e solicitar novamente um número para o usuário; se o n for maior que x, o algoritmo deverá imprimir “Muito grande” e solicitar
novamente um número para o usuário. O algoritmo termina quando o usuário adivinhar o número x, tomado aleatoriamente no início do programa, e deverá imprimir “Correto” e o número de tentativas até o acerto.

Quem poder ajudar, eu agradeço desde já.

 

💡 3 Respostas

User badge image

Eduardo Conceição

Oi Isabela, o primeiro pode ser resolvido assim...

Estude a bem lógica do programa, seus operadores e faça as alterações que achar necessárias. 

#include <conio.h>
#include <stdio.h>
#include <stdlib.h>
main()
{
int num, aux_3,aux_5,aux_7;
num=1;
while (true) {
aux_3 = num%3;
aux_5 = num%5;
aux_7 = num%7;
if (( aux_3==2) && (aux_5== 3) && (aux_7==4)) {
printf("O menor valor positivo que resolve a parada e' %d \n",num);;
break;
}
num++;
}
getch();
system("cls");
return(0);
}

2
Dislike0
User badge image

Eduardo Conceição

Isabela,  como eu não sou muito fã de algoritmos, eu fiz um programeta que faz o teste conforme o enunciado do problema.

Cabe a você agora, pensar na engenharia reversa para obter o algoritmo a partir do exemplo de programa que lhe passo abaixo...

Procure em um tutorail de C e entenda o uso da função srand ANTES de usar o rand, ok?

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

int main(void){
int aleat=0, tenta=1, resp=0;
srand( (unsigned)time(NULL) ); /* eu coloquei essa função para que o numero aleatorio seja sempre diferente */
/* experimente retirar a linha anterior e verá que o numero gerado é sempre o mesmo */
aleat=rand()%100; /* aqui diz que o aleatorio gerado está entre 0 e 100 */
/* printf("Numero: %d\n",aleat); /* para saber antes qual é o valor, descomente esta linha */
while (true) {
printf("Digite o Numero que vc acha estar correto:\n\n");
scanf("%d",&resp);
if (resp==aleat){

printf("Muito bem! Correto, voce descobriu o valor %d em %d tentativas\n\n",aleat,tenta);
break; }
else {
if (resp < aleat)
printf ("Valor digitado muito pequeno\n");
if (resp > aleat)
printf ("Valor digitado muito grande\n");
tenta++;
}

}

}

1
Dislike0
User badge image

Isabella Lima

MUito obrigada, Eduardo ! Você está me ajudando bastante :D

1
Dislike0

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

✏️ Responder

SetasNegritoItálicoSublinhadoTachadoCitaçãoCódigoLista numeradaLista com marcadoresSubscritoSobrescritoDiminuir recuoAumentar recuoCor da fonteCor de fundoAlinhamentoLimparInserir linkImagemFórmula

Para escrever sua resposta aqui, entre ou crie uma conta

User badge image

Outros materiais