none
Transformar For em While em linguagem C RRS feed

  • Pergunta

  • Alguem consegue transformar esse algoritmo?

    Eu gostaria de transformar esse algoritmo que está em for para WHILE.
    Alguem sabe?
    obrigada e bjkss



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


    int main(void)

    {

    int x, y, r;

    system("color F5");
    printf("Digite um numero:");
    scanf("%d", &x);

    // Os números 1 e 2 também são primos!!

    if(x==1 || x==2)

    {
    printf("\n Numero %d e primo", x);
    printf("\n\n");
    system("pause");
    return 0;
    }

    for(y=2; y<x; y++)


    {
    r=x%y;
    if(r==0)
    break;
    }

    if(r!=0)
    printf("O numero %d e primo\n", x);
    else
    printf("O numero %d nao e primo \n", x);

    system("pause");
    return 0;

    }
    • Movido Markus Christen segunda-feira, 17 de maio de 2010 20:11 Tema (De:Arquitetura de Infraestrutura)
    • Movido C. Augusto Proiete [MVP] terça-feira, 25 de maio de 2010 20:25 Movido para o fórum apropriado (De:Arquitetura de Soluções)
    segunda-feira, 17 de maio de 2010 19:37

Respostas

  • #include<stdio.h>

    #include<stdlib.h>


    int main(void)

    {

    int x, y, r;

    system("color F5");
    printf("Digite um numero:");
    scanf("%d", &x);

    // Os números 1 e 2 também são primos!!

    if(x==1 || x==2)

    {
    printf("\n Numero %d e primo", x);
    printf("\n\n");
    system("pause");
    return 0;
    }

     

    y=2;
    while(y<x){
        r=x%y;
        if(r==0)
             break;
        y++;
    }

     


    if(r!=0)
    printf("O numero %d e primo\n", x);
    else
    printf("O numero %d nao e primo \n", x);

    system("pause");
    return 0;

    }

    quarta-feira, 19 de maio de 2010 14:36

Todas as Respostas

  • Eu tentaria algo como...

     

    y=1;

    do

    {

    y++;

    r=x%y;

    }

    while ( (r!=0) && (y<x) )

     

    Precisa testar. Sabe como eh neh, aquela expressão: Em Deus eu confio. O resto tem que testar. rs

    []´s

    segunda-feira, 17 de maio de 2010 21:30
  • #include<stdio.h>

    #include<stdlib.h>


    int main(void)

    {

    int x, y, r;

    system("color F5");
    printf("Digite um numero:");
    scanf("%d", &x);

    // Os números 1 e 2 também são primos!!

    if(x==1 || x==2)

    {
    printf("\n Numero %d e primo", x);
    printf("\n\n");
    system("pause");
    return 0;
    }

     

    y=2;
    while(y<x){
        r=x%y;
        if(r==0)
             break;
        y++;
    }

     


    if(r!=0)
    printf("O numero %d e primo\n", x);
    else
    printf("O numero %d nao e primo \n", x);

    system("pause");
    return 0;

    }

    quarta-feira, 19 de maio de 2010 14:36