Ir ao conteúdo

Posts recomendados

Postado

Preciso fazer um código que condiz com o seguinte enunciado:

1-Escreva uma função que receba como parâmetros as coordenadas cartesianas (X, Y) e imprima em qual quadrante este par ordenado está.

2-Escreva uma função principal (main) que leia as coordenadas cartesianas de uma sequência de pontos e chame a função anterior para cada um deles. O programa deverá realizar a leitura até que seja digitado o valor 0 (zero) em pelo menos uma das coordenadas do par (ex: (0,2), (3,0), (0,0)).

Bom... vou digitar o código que eu criei logo abaixo e se possível alguém poderia me demonstrar uma solução, pois está dando um loop infinito.

Agradeço e aguardo retorno.

 

#include <stdio.h>
void funcao(int x, int y){
    int cont=0;
 while(cont!=x|| cont!=y){
    if(x>0 && y>0){
         printf("Primeiro\n");
     }
    if(x>0 && y<0){
        printf("Quarto\n");
    } 
     if(x<0 && y>0){
        printf("Segundo\n");
    } 
     if(x<0 && y<0){
        printf("Terceiro");
    } 
 }
}
int main(){
    int x,y;
    scanf("%d %d", &x, &y);
    funcao(x,y);
   funcao(x,y);
    
    return 0;
}

 

  • Curtir 1
Postado
#include <stdio.h>
void funcao(int x, int y){
    int cont=0;
 while(cont!=x|| cont!=y){
    if(x>0 && y>0){
         printf("Primeiro\n");
     }
    if(x>0 && y<0){
        printf("Quarto\n");
    } 
     if(x<0 && y>0){
        printf("Segundo\n");
    } 
     if(x<0 && y<0){
        printf("Terceiro");
    } 
 }
}
int main(){
    int x,y;
    scanf("%d %d", &x, &y);
    funcao(x,y);
   funcao(x,y);
    
    return 0;
}

 

Use o botão code como explicado no primeiro post do forum.

 

Veja acima a diferença.

 

Seu programa está bem errado. A função deve tratar apenas um par e retornar. O loop como você mesma explicou deveria estar em main.

 

E em main você chamou a função duas vezes então seriam duas eternidades até terminar o programa.

 

21 minutos atrás, Rosa Isabelle Campos disse:

Escreva uma função principal (main) que leia as coordenadas cartesianas de uma sequência de pontos e chame a função anterior para cada um deles

 

pois é.

 

Notou que só lê as coordenadas uma vez?

 

Tem um manual? Um livro? Uma apostila? scanf() retorna um int. Porque não testou?

  • Curtir 1
  • Obrigado 1

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