Anda di halaman 1dari 11

1. Enunciado: O que faz o seguinte programa? #include <stdio.

h> int main() { int x; scanf("%d",&x); printf("%d",x); return (0); } Resposta: scanf l a varivel x pelo teclado e printf imprime o valor informado. 2. Enunciado: Escreva uma funo que some dois inteiros e retorne o valor da soma. Resposta: int Soma(int x, int y) { return (x+y); }

3. Enunciado: Diga o resultado das variveis x, y e z depois da seguinte sequncia de operaes: int x,y,z; x=y=10; z=++x; x=-x; y++; x=x+y-(z--);
Resposta: x = -11, y=11, z=10

4. Faca um programa que apresente na tela a tabela de converso de graus Celsius para Fahrenheit, de -100 C a 100 C. Use um incremento de 10 C. OBS: Farenheit = (9/5)*(Celsius) + 32 Soluo: #include <stdio.h> #include <stdlib.h> int main() {

float C,F; int Temp_Min = -100, Temp_Max = 100, Inc = 10; printf("\n\n ****** Celsius ******** Farenheit ******\n\n"); for (C = Temp_Min; C<=Temp_Max; C =C+Inc) { F = (float)(1.8* C)+32; printf("\t%f\t\t %f\n", C, F); } printf("\n\n"); system("pause"); return 0; } 5. O que imprime o programa a seguir? Tente entend-lo e responder. A seguir, execute-o e comprove o resultado.

# include <stdio.h> int main() { int t, i, M[3][4]; for (t=0; t<3; ++t) for (i=0; i<4; ++i) M[t][i] = (t*4)+i+1; for (t=0; t<3; ++t) { for (i=0; i<4; ++i) printf ("%3d ", M[t][i]); printf ("\n"); } return 0; }

Soluo: Carrega uma matriz 3x4 de 1 a 12, e mostra linha por linha(M[0][0]=1, M[0][1]=2, M[0][2]=3, .... M[2][4]=12).

O que imprime o programa a seguir? Tente entend-lo e responder:

#include <stdio.h> main() { char nome[30]; int B; printf ("informe um nome:"); gets(nome); for(B=0;B<=3;B++) printf("\%c",nome[B]); printf ("\n\n"); system("PAUSE"); return (0); } Resposta: Recebe um nome e imprime as 4 primeiras letras do nome.

6. Fazer um programa para receber um nmero inteiro de segundos do usurio e imprimir a quantidade correspondente em horas, minutos e segundos. #include main(){ int numero, h, m, s; puts("Digite a quantidade de segundos:\n"); scanf("%d", &numero); h= numero/3600; m=(numero%3600)/60; s=(numero%3600)%60; printf("\n%d segundos corespondem a %d horas, %d minutos e %d segundos.", numero, h,m,s); getch(); }

7. Fazer um programa para receber 3 valores inteiros do usurio e mostrar a sua mdia (que pode no ser inteira).

Resposta: #include main(){ int n1,n2,n3; float md, soma;

puts("Digite tres numeros\n"); scanf("%d %d %d", &n1,&n2,&n3); soma=n1+n2+n3; md=(soma/3); printf("\n\nA media entre %d, %d, %d e igual a %.2f.", n1,n2,n3, md); getch(); }

8. Fazer um programa no qual o usurio vai entrando sucessivamente com valores positivos. Quando o usurio entrar com um valor negativo o programa para de pedir valores e calcula a mdia dos valores j fornecidos e informe a quantidade de nmeros fornecidos pelo usurio.

include <stdio.h> int main() { int num, cont=0; float soma=0, media; scanf("%d", &num); while (num >= 0) { soma += num; cont++; scanf("%d", &num); } media = soma / cont; printf ("\nMedia: %f\n", media); return 0; }
9. Fazer um programa que sorteie um nmero de 0 a 100 e que permita que o usurio (sem conhecer o nmero sorteado) tente acertar. Caso no acerte, o programa deve imprimir uma mensagem informando se o nmero sorteado maior ou menor que a tentativa feita.

Ao acertar o nmero, o programa deve imprimir a quantidade de tentativas feitas.

#include<iostream> #include<stdlib.h>

using namespace std;

int main(void) { int n; // um numero inteiro informado pelo usuario int ale; // o numero aleatorio gerado pelo programa int cont; // contador das tentativas

cont = 0; n = 0;

srand(time(NULL)); // inicializa o gerador de numeros aleatorios ale = rand() % 100; // ale eh o numero aleatorio gerado

//sintaxe da funcao rand() //ale = menor valor + rand() % (maior valor - menor valor) //ale = 0 + rand() % (100-0);

while (ale!=n) { cout << "informe um numero inteiro: ";

cin >> n;

if (ale == n) break;

if (ale > n) cout << "o numero sorteado eh maior que o numero informado\n";

if (ale < n) cout << "o numero sorteado eh menor que o numero informado\n";

cont++; } cout << "acertou com " << cont << " tentativas\n"; return 0; } 10. Implementar a funo RAIZQUADRADA. Esta funo deve: Receber um nmero do tipo float como parmetro. Retornar a raiz quadrada do nmero recebido, de tal maneira que esta raiz, quando elevada ao quadrado, apresente um erro mximo de 0.01% em relao ao valor do parmetro. Arquivo: raizQuadrada.h float raizQuadrada(float z) { float r=0; do{ r +=0.0001; }while(z-r*r>0.0001); return r; } // fim da funo raizQuadrada

Arquivo: chama_raizQ.cpp #include <iostream> using namespace std; #include raizQuadrada.h" int main() { float x; cout << "\nDigite um numero: "; cin >> x; cout << "\n\nA raiz quadrada desse numero eh: " << raizQuadrada(x) << endl<<endl; system("PAUSE"); } // fim de main

11. Faa um programa que dado o vetor unidimensional [2; 4; 35; 50; 23; 17; 9; 12;27; 5] retorne: a. maior valor b. mdia dos valores c. os valores dispostos em ordem crescente d. sub conjunto de valores primos que est contido no vetor
# include<stdio.h> #include <stdlib.h>

int main(){ int vetorU[10] = {2,4,35,50,23,17,9,12,27,5}; int j,i,x,soma=0,cont=0; float media=0;

printf("Os valores do vetor e : \n\n"); for(i=0;i<10;i++){

printf("vetorU[%d] %d\n",i,vetorU[i]); } for(i=0; i<9; i++){ for(j=i+1; j<10; j++){ if(vetorU[i] > vetorU[j]){

x = vetorU[i]; vetorU[i] = vetorU[j]; vetorU[j] = x; } } } printf("\nA ordem crescente e: "); for(i=0; i<10; i++){ printf("%d,",vetorU[i]);

soma = soma + vetorU[i]; media = soma /10; } printf("\n\nO maior valor e: %d\n",vetorU[9]);

printf("A media e: %.2f\n\n",media); int primo(int x) { for (n=2; n < x/2; n++) if (x % n == 0) return 0;

//se a diviso de x por qualquer outro nmero tiver resto 0, //significa que ele divisvel por esse nmero, e portanto no primo

return 1; //se chegou aqui, porque primo } system("pause"); return 0;

}
#include <stdio.h> #include <stdlib.h> int main() { /** Faa um programa que dado o vetor unidimensional [2; 4; 35; 50; 23; 17; 9; 12; 27; 5] retorne: a. maior valor; b. menor valor c. mdia dos valores. */ int vetoru[10]={2, 4, 35, 50, 23, 17, 9, 12, 27, 5}; int i, maiorv = 0,menorv, soma=0,media; printf("Esses sao os numeros do vetor:\n"); for(i = 0; i < 10; i++) { soma = soma + vetoru[i]; printf("%d\n",vetoru[i]); } printf("\nMedia dos valores do vetor: %.2f\n", (float)soma / 10); for(i = 0; i < 10; i++) if(vetoru[i] > maiorv) maiorv = vetoru[i]; printf("\nMaior valor encontrado no vetor: %d\n", maiorv); menorv = maiorv;

for(i = 0; i < 10; i++) if(vetoru[i] < menorv) menorv = vetoru[i]; printf("\nMenor valor encontrado no vetor: %d\n\n", menorv); system("pause"); return 0; }

12. Vamos supor que vrias pedras do jogo de xadrez esto no tabuleiro. Para facilitar a indicao das peas, vamos convencionar: 1 pees 3 torres 5 reis 0 ausncia de peas 2 cavalos 4 bispos 6 rainhas O tabuleiro o seguinte: 1 1 0 1 0 0 1 1 3 0 0 0 1 0 0 0 0 1 0 0 0 3 6 5 5 0 0 1 4 1 6 0 4 0 1 1 0 0 0 1 0 1 0 0 0 0 0 1 2 0 6 0 1 1 1 0 1 0 0 1 0 1 0 6

a) Construa um programa que determine a soma total entre pees ou bispos e a quantidade de posies com ausncia de peas; b) O programa determina tambm qual a quantidade de cada tipo de pea no tabuleiro.
#include <stdio.h> #include <conio.h> void main(){ int tabuleiro[8][8] = { {1,3,0,5,4,0,2,1}, {1,0,1,0,0,1,0,0}, {0,0,0,0,1,0,6,0}, {1,0,0,1,1,0,0,1}, {0,1,0,4,0,0,1,0}, {0,0,3,1,0,0,1,1}, {1,0,6,6,0,0,1,0}, {1,0,5,0,1,1,0,6} }; int i,j; int branco=0, peao=0, cavalo=0, torre=0, bispo=0, rei=0, rainha=0; printf("\tApresentao do tabuleiro\n");

for (i=0;i<8;i++){ for (j=0;j<8;j++){ printf("%2.0d",tabuleiro[i][j]); } printf("\n"); } for (i=0;i<8;i++){ for (j=0;j<8;j++){ switch (tabuleiro[i][j]){ case 0: branco++; break; case 1: peao++; break; case 2: cavalo++; break; case 3: torre++; break; case 4: bispo++; break; case 5: rei++; break; case 6: rainha++; break; } } } printf("\n"); printf("Soma de Peoes ou bispos e brancos =%d\n",(peao + bispo + branco)); printf("Peoes =%d, cavalos=%d, torres=%d, bispos=%d, reis=%d, rainhas=%d, branco=%d",peao, cavalo, torre, bispo, rei, rainha, branco);

Anda mungkin juga menyukai