Linguagens de Programação - Atividade 17

Leia com atenção as instruções abaixo.

Preparação do Repositório.

Crie um repositório privado no GitHub. Repositórios públicos levaram nota zero automaticamente. Se seu nome for José Carlos Silva, o repositório deve ter o nome josecarloslip20202. Primeiro e segundo nome, sufixo lip20202, tudo minúsculo. É nele que devem ser colocados os arquivos. Convide o professor (jmarcelo.alencar@gmail.com) para ser colaborador do repositório. Faz parte da avaliação utilizar o GitHub de forma correta.

Dentro do repositório crie uma pasta chamada atividades. Dentro desta pasta você colocará os arquivos de cada atividade. Por exemplo, os arquivos da Atividade 02 devem estar na pasta atividades/atividade02.

Formato da Entrega:

Valor: 2,0 pontos na 3ª Nota.

Data da Entrega Limite: 24/03/2021

Questão 01 - 1,0 Ponto

Assuma as seguintes regras de associatividade e de precedência para expressões:

Precedência Mais Alta *, /, not
+, -, &, mod
- (unário)
=, /=, <, <=, >=, >
and
Mais baixa or, xor
Associatividade Esquerda para a direita

Mostre a ordem de avaliação das seguintes expressões por meio do uso de parênteses em todas as subexpressões e colocando um expoente no parêntese direito para indicar a ordem. Por exemplo, para a expressão:

a + b * c + d
                            

a ordem de avaliação seria representada como:

((a + (b * c)1)2 + d)3
                            

Questão 02 - 0,5 Pontos

Considere que a função fun é definida como:

int fun(int *k) {
    *k += 4;
    return 3 * (*k) - 1 ;
}
                            

Suponha que fun seja usada em um programa, como:

void main() {
    int i = 10, j = 10, sum1, sum2;
    sum1 = (i / 2) + fun(&i);
    sum2 = fun(&j) + (j / 2);
}
                            

Quais são os valores de sum1 e sum2

Questão 03 - 0,5 Pontos

Considere que o seguinte programa em C:

int fun(int *i) {
    *i += 5;
    return 4;
}

void main() {
    int x = 3;
    x = x + fun(&x);
}
                            

Qual é o valor de x após a sentença de atribuição em main, assumindo que