Baixe o app para aproveitar ainda mais
Prévia do material em texto
Questão - Linguagem de Programação Na disciplina de linguagem de programação você aprendeu sobre ponteiros e endereços de memórias. Explique com as suas palavras os seguintes conceitos: a) Para que serve os endereços de memória de um programa? b) O que é uma variâvel ponteiro em programação? Que tipo de informação ela armazena? c) Como acessar, em linguagem C, o conteúdo para qual um ponteiro aponta? d) Como acessar, em linguagem C, o endereço de uma variâvel do tipo ponteiro? a) Endereços de memôria servem para Klent1ficar a localização de uma variável na memôria do programa b) Uma variável ponteiro é uma variável que armazena, em seu conteúdo, um endereço. Este endereço serve corresponde ao endereço de outra variável na memôna. Assim, dizemos que um ponteiro aponta para outra variável na memória c) Para acessar o conteúdo, usamos o operador indireto asterisco C) d) Para acessar o endereço usamos o operador de endereços & Questão - Linguagem de Programação Observe o código abaixo em linguagem C. O código abaixo calcula o n-ésimo termo de uma série de Fibonacci empregando uma função iterativa. #incfude <stdio.h> #incfude <stdfib.h> int fib(intn); int main() { intn; int result; printf(Digite um valor inteiro para calcular a sequencia de Fibonacci. \n·J; scanf_sC-%d•, &n); resuff = fib(n); printWO ultimo valor eh: %cf\n•, resuff); systemC-pause•J; retum O; } int nb(int n) { int i, fíb1 = 1, fíb2 = 1, soma; for (i = 3; i <= n; i = i + 1) { soma= fíb1 + fíb2; fíb1 = fíb2; fíb2 = soma; } retum fib2; } Refaça o algoritmo acima para que ele encontre o n-ésimo termo utilizando uma função recursiva ao invés de utilizar uma função iterativa. Resposta: #include <stdio.h> #include <stdlib.h> int fib(int n) { if(n == 1) return 1; else if(n == 2) return 1; else return fib(n - 1) + fib(n - 2) } int main(void) { int n; scanf_sro/od", &n); printWo/od\n", fib(n)); systemrpause") return O; } Questão - Linguagem de Programação Considere um algoritmo com as seguintes etapas: 1. Receba uma variável inteira na tela (variável x); 2. Imprime na tela o valor de x utilizando um ponteiro (variável px); 3. Imprima o endereço da variável px na tela; Observe o algoritmo abaixo e preencha as instruções faltantes nas linhas 8, 9 e 10. 1. #incfude <stdio.h> 2. #inctude <stdfib.h> 3. intmain() 4. { 5 . int x, "px; 6. printf("Digite o valor de um numero: \n"); 7 . scanf_s("%d", &x); 8. ___________ __ 9. ____________ _ 10. ____________ _ 11. return O; 12.) Gabarito 8 px=&x ; 9 printf(Valor digtado: %d \n", *px); 10 printtrEndereço da variavel x: %p \n", &px);
Compartilhar