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.

 

  Em 23/10/2022 às 22:47, 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

Expandir  

 

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

Mostrar 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

Mostrar mais  
×
×
  • Criar novo...

LANÇAMENTO!

eletronica2025-popup.jpg


CLIQUE AQUI E BAIXE AGORA MESMO!