• Nenhum resultado encontrado

Avaliação 2 03/12/2016 Disciplina Lógica de Programação Prof. Wagner dos Santos C. de Jesus Curso de Engenharias Questões

N/A
N/A
Protected

Academic year: 2021

Share "Avaliação 2 03/12/2016 Disciplina Lógica de Programação Prof. Wagner dos Santos C. de Jesus Curso de Engenharias Questões"

Copied!
8
0
0

Texto

(1)

Avaliação – 2 – 03/12/2016 Disciplina Lógica de Programação Prof. Wagner dos Santos C. de Jesus

Curso de Engenharias Questões 1) Responda as questões abaixo (0,3).

a) O que vem a ser um ponteiro.

R: Vem a ser uma variável que tem a finalidade de apontar para um endereço na memória.

b) Qual a finalidade dos símbolos de chaves { } em um programa c. R: Delimita a sequencia de instruções que serão executadas dentro de uma estrutura.

c) Qual a finalidade da função main().

R: A função main() será a primeira função a ser chamada quando um programa C é executado.

2) Analise o trecho de programa abaixo e escreva os valores de suas saídas ou eventuais erros se houverem (0,5).

int a = 3; int b = 5; int k; char str[30] = "Morango"; float c = 1.75; k = a/b; int d = c; int x = a >= b; int p = 9 - (++a); int p2 = 9 - (a--); printf("a = %d\n",a); printf("c = %0.3f\n",c); printf("k = %d\n",k); printf("d = %d\n",d); printf("str = %c\n",str[2]); printf("x = %d\n",x); printf("p = %d\n",p); printf("p2 = %d\n",p2); R: a = 3 c = 1.750 k = 0 d = 1

(2)

3) Observe o fluxograma abaixo. (0,5).

a) Faça o teste de mesa do fluxograma considerando os valores iniciais das variáveis todas inteiras n = 3; ra = (45,66,69); n1 = (5,3,8); n2 = (3,4,6) .

Continuação da questão - 3

b) Escreva o algoritmo baseado no fluxograma acima. Var

n,ra, ra_maior : Inteiro n1, n2, maior, m : flutuante Inicio

ra_maior = 0 maior =0; leia(n)

para i de 1 ate n faça leia(ra) leia(n1) leia(n2) m = (n1+n2)/2 se(m > maior) maior = m ra_maior = ra fim_se fim_para escreva (ra_maior) escreva (maior) fim

(3)

c) Escreva a codificação em C para o fluxograma. #include <stdio.h> #include <stdlib.h> main() { int n; float n1; float n2; float m=0; int ra; float maior=0; int ra_maior = 0; scanf("%d",&n); for(int i=1;i<=n;i++){ scanf("%d",&ra); scanf("%f",&n1); scanf("%f",&n2); m = (n1 + n2)/2; if(m > maior) { maior = m; ra_maior = ra; } }

printf("RA = %d Maior nota = %2.2f ",ra_maior,maior); }

4) Escrever um algoritmo que dada uma seqüência de (n) números positivos e inteiros pelo teclado, selecionar quantos deles são primos e quantos não são (1,5).

R:Var N : Inteiro num:Inteiro quant,primo : Inteiro inicio quant = 0 leia(n)

para i de 1 ate n faça leia(num)

primo = 0;

para j de 1 ate num faça se( num % j = 0) primo = primo + 1 fim-se

fim-para se(primo==2)

(4)

5) José precisava calcular a área do trapézio representado pelo gráfico abaixo, mas não conhecia as alturas do trapézio, no entanto, José sabia que a função para traçar o gráfico era f(x) = ex e o intervalo era [a,b] conhecido, que possibilita, o uso da integral abaixo (1,0).

 

x

b

a

[

b

a

]

b

a

x

e

e

e

e

Você deve escrever um programa em C que dados os valores de a e b calcular a ante derivada representada pela função que traça o gráfico acima. R: #include <stdio.h> #include <stdlib.h> #include <math.h> main() { float a; float b; float fx; scanf("%f",&a); scanf("%f",&b); fx = exp(b) - exp(a); printf("Integral = %0.3f ",fx); }

(5)

6) Fazer um programa que lê uma string qualquer de no máximo 80 caracteres e imprima (1,0):

a) Quantos caracteres têm a string.

b) Quantos caracteres são maiúsculos e minúsculos. R: #include <stdio.h> #include <stdlib.h> #include <string.h> #include <cctype> main() { char palavra[80]; char t[1]; char p[1]; char s; gets(palavra); int conta_num =0; int x = strlen(palavra); int conta_mais = 0; for(int i=0;i<=x-1;i++) { s = palavra[i]; if(palavra[i] != ' '){ t[0] = toupper(palavra[i]); p[0] = palavra[i]; if(p[0] == t[0] ) conta_mais++; } } printf("Quantidade de caracteres %d\n",x); int minus = x - conta_mais;

printf("Maiusculas = %d \n",conta_mais); printf("Minusculas = %d \n",minus); }

(6)

7) Faça o teste de mesa do programa abaixo. Considere a variável n = 1000111 (2,0). #include <stdio.h> #include <stdlib.h> #include <string.h> #include <math.h> main() {

char nume [10][10]={"zero","um","dois","tres","quatro", "cinco","seis","sete","oito","nove"}; char bin[8]; char c[2]; int dec=0; int e=0; scanf("%s",&bin); int x = strlen(bin)-1; int k = x; for(int i=0;i<=x;i++){ c[0] = bin[k]; int y = atoi(c); int d = pow(2,e)*y; dec += d; k--; e++; }

int num = dec / 10; int r = dec % 10;

printf("%s = %s\n",nume[num],nume[r]); }

(7)

8) Escrever um algoritmo e o fluxograma que permita a entrada pelo teclado de uma matriz (4x4) com números inteiros e positivos mostrar o elemento da diagonal secundária (1,2).

R: #include <stdio.h> #include <stdlib.h> main() { int m[4][4]; for(int i=0;i<=3;i++){ for(int j=0;j<=3;j++){ scanf("%d",&m[i][j]); } } int j = 3; for(int i=0;i<=3;i++){ printf("%d\n",m[i][j]); j--; } }

9) {Marta,Claudia,Solange,Flavia} eram muito amigas e com certa freqüência todas gostavam da vida social noturna e para ir as festas tiveram uma boa idéia, como todas possuíam a mesma estatura física, podem usar, uma o sapato da outra, realizando um sistema de permutação para que não haja gasto de dinheiro, comprando sapatos para cada festa. Você deve escrever o fluxograma o algoritmo e o programa em C que permita entrar com os nomes e realiza as combinações necessárias para que elas possam saber de quem irão emprestar os sapatos (3,0).

Observação: A solução deverá ser apresentar com as restrições abaixo.

a) O algoritmo não poderá exceder a 10 linhas de código.

b) Deverá ser considerado que cada uma também usara seu próprio sapato.

c) Os nomes das amigas podem ser alterados na entrada pelo teclado possibilitando o uso para outros grupos de 4 amigas.

d) O programa não pode ultrapassar o grupos de pessoas que será sempre de 4.

Exemplo:

Entrada Saída

(8)

Flavia Claudia com sapato de Claudia Claudia com sapato de Solange Claudia com sapato de Flavia Solange com sapato de Marta Solange com sapato de Claudia Solange com sapato de Solange Solange com sapato de Flavia Flavia com sapato de Marta Flavia com sapato de Claudia Flavia com sapato de Solange Flavia com sapato de Flavia

Bom Trabalho !!!

R: #include <stdio.h> #include <stdlib.h> main() { char nome [4][10]; for(int i=0;i<=3;i++) scanf("%s",nome[i]); for(int i=0;i<=3;i++){ for(int j=0;j<=3;j++){

printf("%s com sapato de %s \n",nome[i],nome[j]); }

} }

Referências

Documentos relacionados

A Tabela 8 mostra um quadro resumo das variações de valores das métricas de similaridade tanto para a estabilidade quanto para a autoridade de acordo com cada algoritmo estudado.

Visando justamente suprir a necessidade de gerir dados da organização, de modo que os mesmos sejam adequados para o ambiente gerencial e venham a se tornar informação útil no

Este Trabalho de Conclusão de Curso propõe um método inédito na Bioinformática para determinar qual site preditor de epítopos possui alto poder preditivo, culminando com

Pode-se notar que a diferença da distância de parada do sistema com controlador e sem controlador é menor que na simulação para terreno seco, entretanto o sistema com ABS e

Embora a maioria dos trabalhos que visam detecc¸˜ao de centros de ossificac¸˜ao utilizem extrac¸˜ao de regi˜oes de interesse na etapa inicial do projeto, Zhang, Gertych e Liu

Essa estatística, infelizmente, influencia diretamente no desenvolvimento cognitivo e pessoal do DV.Segundo Dias (2010), se o uso do computador e de OA no ensino

A técnica baseada em regras (RBMT) tem seu processo de tradução baseado na transferência do texto em LF (Língua Fonte) para LA (Língua Alvo), através de regras que representam

caminho mais curto 131 1674 u.d. O fato de o ACS ter obtido um caminho mais longo em 78, 2% dos mapas, igualando-se ao Dijkstra somente em 131 dos 600 mapas, ainda não representa