Aulas de C para quem já sabe Python

Aprendendo C depois de aprender Python

004 - Condições e repetições

Arquivos necessários

Baixe todos os programas aqui.

Configuração do VSCode

Idênticas as da aula 3, incluídas no zip desta aula.

Python

condicoes1.py

def le_int(mensagem):
    return int(input(mensagem + "\n"))


primeiro = le_int("Primeiro número:")
segundo = le_int("Segundo número:")
if primeiro > segundo:
    print("O primeiro número %d é maior que o segundo %d" % (primeiro, segundo))
elif primeiro == segundo:
    print("O primeiro número %d é igual ao segundo %d" % (primeiro, segundo))
else:
    print("O primeiro número %d é menor que o segundo %d" % (primeiro, segundo))

condicoes2.py

def le_int(mensagem):
    return int(input(mensagem + "\n"))


numero = le_int("Número:")
print("O número %d é %s\n" % (numero, "par" if numero % 2 == 0 else "impar"))

condicoes3.py

def le_int(mensagem):
    return int(input(mensagem + "\n"))


numero = le_int("Número:")
match (numero):
    case 0 | 1 | 2 | 3:
        print("Entre 0 e 3.\n")
    case 4:
        print("4!")
    case _:
        print("Outro número %d!\n" % (numero))

repeticao1.py

n = 10
while n >= 0:
    print("%d" % n)
    n -= 1

repeticao2.py

print("Decrescendo")
for n in range(10, -1, -1):
    print("%d" % n)

print("Crescendo")
for n in range(0, 11):
    print("%d" % n)

repeticao3.py

n = 10
while True:
    print("%d" % n)
    n -= 1
    if n < 0:
        break

C

condicoes1.c

#include <stdio.h>
#include <stdbool.h>

int le_int(char mensagem[])
{
    int a = 0;
    do
    {
        puts(mensagem);
        if (scanf("%d", &a))
            return a;
        puts("Erro lendo número. Redigite.");
        int lido = 0;
        do
        {
            lido = getchar();

        } while (lido != '\n' && lido != EOF);
    } while (true);
}

int main(void)
{
    int primeiro = le_int("Primeiro número:");
    int segundo = le_int("Segundo número:");
    if (primeiro > segundo)
    {
        printf("O primeiro número %d é maior que o segundo %d", primeiro, segundo);
    }
    else if (primeiro == segundo)
    {
        printf("O primeiro número %d é igual ao segundo %d", primeiro, segundo);
    }
    else
    {
        printf("O primeiro número %d é menor que o segundo %d", primeiro, segundo);
    }
}

condicoes2.c

#include <stdio.h>
#include <stdbool.h>
#include <string.h>

int le_int(char mensagem[])
{
    int a = 0;
    do
    {
        puts(mensagem);
        if (scanf("%d", &a))
            return a;
        puts("Erro lendo número. Redigite.");
        int lido = 0;
        do
        {
            lido = getchar();

        } while (lido != '\n' && lido != EOF);
    } while (true);
}

int main(void)
{
    int numero = le_int("Número:");
    printf("O número %d é %s\n", numero, numero % 2 == 0 ? "par" : "impar");
}

condicoes3.c

#include <stdio.h>
#include <stdbool.h>

int le_int(char mensagem[])
{
    int a = 0;
    do
    {
        puts(mensagem);
        if (scanf("%d", &a))
            return a;
        puts("Erro lendo número. Redigite.");
        int lido = 0;
        do
        {
            lido = getchar();

        } while (lido != '\n' && lido != EOF);
    } while (true);
}

int main(void)
{
    int numero = le_int("Número:");
    switch (numero)
    {
    case 0:
    case 1:
    case 2:
    case 3:
        puts("Entre 0 e 3.\n");
        break;
    case 4:
        puts("4!");
        break;
    default:
        printf("Outro número %d!\n", numero);
        break;
    }
}

repeticao1.c

#include <stdio.h>

int main(void)
{
    int n = 10;
    while (n >= 0)
    {
        printf("%d\n", n);
        n--;
    }
}

repeticao2.c

#include <stdio.h>

int main(void)
{
    puts("Decrescendo");
    for (int n = 10; n >= 0; n--)
    {
        printf("%d\n", n);
    }
    puts("Crescendo");    
    for (int n = 0; n <= 10; n++)
    {
        printf("%d\n", n);
    }
}

repeticao3.c

#include <stdio.h>

int main(void)
{
    int n = 10;
    do
    {
        printf("%d\n", n);
    } while (--n >= 0);
}

Video

Linguagem C para quem já programa em Python - Aula 4