#+title: Curso Básico da Linguagem C #+subtitle: Exercícios #+author: Blau Araujo #+startup: show2levels #+options: toc:3 * Exercícios da aula 12: Leitura da entrada padrão com 'fgets' - [[../../aulas/12-fgets/README.org][Anotações da aula]] - [[https://youtu.be/ZZr9HBPo0Oc][Vídeo]] ** 1. Desafio: Fatorial de 'n' Escreva um programa para calcular o fatorial de um número inteiro positivo entre 1 e 20 recebido por digitação no terminal. Além da impressão do resultado, o programa deve validar: - Se a entrada digitada corresponde a um inteiro positivo; - Se o número digitado está na faixa de valores esperado; - Se existem outros caracteres além dos dígitos válidos. #+begin_quote O fatorial de um número é o produto de todos os números naturais menores ou iguais a ele mesmo. Ex.: ~5! = 5 × 4 × 3 × 2 × 1 = 120~ #+end_quote ** 2. Desafio: Qual é o tipo? Escreva um programa que peça um número qualquer ao usuário e imprima o tipo adequando para o número digitado (se for um número válido). O programa deve terminar com erro (e mensagem em =stderr=) se a string digitada não corresponder a um valor numérico válido. São representações numéricas válidas: - Inteiros positivos e negativos em base 2, 8, 10 e 16; - Números de ponto flutuante com ou sem notação científica; - Caracteres alfanuméricos e de pontuação da tabela ASCII.