Ficha 2 PT
Ficha 2 PT
Ficha 2 PT
Exercícios Ficha 2
␣ ! " # $ % & ’ ( ) * + , - . /
32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47
0 1 2 3 4 5 6 7 8 9 : ; < = > ?
48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63
@ A B C D E F G H I J K L M N O
64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79
P Q R S T U V W X Y Z [ \ ] ^ _
80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95
‘ a b c d e f g h i j k l m n o
96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111
p q r s t u v w x y z { | } ~ DEL
112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127
Escreva um programa que leia do terminal uma letra minúscula e escreva a correspondente maiúscula:
Solução
# include < stdio .h >
int main () {
char ch ;
printf ( " Introduza a letra minuscula : " ) ;
scanf ( " % c " , & ch ) ;
printf ( " O correspondente maiusculo de % c = % c \ n " , ch , ch - ( 'a ' - 'A ') ) ;
}
Em C, uma MACRO é um fragmento de código-c ao qual damos um identificador usando a diretiva #define:
# define < nome da macro > < codigo -c >
Exemplos:
# define PRIMEIRA_LETRA 'A '
# define UM_VALOR_INTEIRO 1 + 2 + 100 * 2
2. Calcule o perímetro e a área de uma circunferência de raio r (introduzido pelo utilizador), segundo as fórmulas:
a ◦ = πr 2 , p ◦ = 2πr
Solução
# include < stdio .h >
# define PI 3.14159265359
int main () {
float r ;
printf ( " Introduza o raio da circunferencia : " ) ;
scanf ( " % f " , & r ) ;
printf ( " Area = %f , Perimetro = % f \ n " , PI * r * r , 2 * PI * r ) ;
}
Exemplo de output:
Introduza o numero de segundos : 3723
h=1, m=2, s=3
Solução
# include < stdio .h >
int main () {
int segundos ;
printf ( " Introduza o numero de segundos : " ) ;
scanf ( " % d " , & segundos ) ;
Exemplo de output:
Introduza o valor do salario : 225
Salario : 325 euro
Solução
# include < stdio .h >
int main () {
float salario ;
printf ( " Introduza o valor do salario : " ) ;
if ( salario <400) {
salario = salario + 100 ;
}
Exercício 5
Escreva um programa em C que:
1. Pergunte ao utilizador o valor de dois números inteiros - a, b
2. Troque o valor das duas variáveis e as mostre no terminal
Exemplo de output:
a: 1
b: 2
Novos valores - a = 2 , b = 1
Exercício 6
Um objeto que se encontra inicialmente em repouso, é sujeito a uma força que lhe provoca uma aceleração a de valor constante.
O espaço percorrido por esse objeto no intervalo de tempo t , é dado pela seguinte fórmula:
a × t2
s=
2
Escreva um programa em C que:
1. Pergunte ao utilizador os valores inteiros da aceleração (a) e do intervalo de tempo (t)
2. Apresente o valor calculado para o espaço percorrido (s)
Exemplo de output:
Aceleracao : 9 <- stdin
Intervalo de Tempo : 5 <- stdin
Espaco percorrido : 112.500000
Exercício 7
1. Implemente um programa que leia do terminal 3 valores - (a, b, c)
2. Verifique que nenhum dos valores é 0 (zero)
3. Apresente os valores introduzidos por ordem crescente no terminal
Dica: use a estrutura de controlo if para conseguir o efeito
Exercício 8
1. Implemente um programa que leia um carácter (c)
2. O programa deverá dizer no terminal se o carácter lido é:
• Uma letra minúscula ou maiúscula ([a-z] ou [A-Z])
• Um algarismo ([0-9])
• Tipo não alfanumérico (i.e.: os restantes)
3. Se o carácter for alfanumérico, deverá mostrar a versão maiúscula e minúscula.
Exercício 9
Execute o seguinte código e comente os resultados:
# include < stdio .h >
int main () {
int n ;
float x ;
char ch ;
x = 100.554 ;
n = x;
ch = 'd ';
printf ( " Valor de x = %f\n", x);
printf ( " Valor de n = %d\n", n);
printf ( " Valor de n ( char ) = %c\n", n);
printf ( " Valor de ch = %c\n", ch ) ;
printf ( " Valor de ch ( int ) = %d\n", ch ) ;
}
Exercício 10
Qual o valor das seguintes expressões, tendo em conta a seguinte declaração (calculado em sequência):
int x, y;
• y = 4 + 3 * 2
• x = 3 * 4 / 2 - 2
• x = y++
• x += 3
• y -= 2
• x /= 3
• y %= 3
• x *= y++ + 3
Exercício 11
Assuma a seguinte inicialização:
int p = 5, k = 3;
Exercício 12
Tente apurar o resultado das seguintes expressões:
• 2 > 7 ? 3 : 4
• 5 > 20 || 20 > 5
• !(73 % 2 != 0)
Exercício 13 (extra-aula)
1. Escreva um programa que peça ao utilizador 2 números inteiros (num1, num2) e mostre no terminal as operações aritméticas
mais comuns, exemplo:
2. Modifique o seu programa de forma que pergunte ao utilizador a operação a realizar, exemplo:
Escolha um operador :
+) adicao
-) subtracao
*) multiplicacao
/) divisao
Operador : /
Introduza 2 numeros inteiros [ num1 , num2 ]: 12 ,3
12 / 3 = 4
Exercício 14 (extra-aula)
Implemente um programa que receba dois valores do tipo inteiro e que apresente o resultado das operações aritméticas:
• Divisão inteira
• Divisão real
• O resto da divisão
• A raiz quadrada da soma dos dois valores ( sqrt)
• O primeiro valor incrementado em 1 unidade e o segundo valor decrementado em 1 unidade