Programação 23/24 S2

10ABR 4ª Turnos Arrays

  • Teoria Arrays PDF + Extra (VLA)
  • Arrays de 1 dimensão
  • Exercício Slide 10 Solução
  • Arrays multidimensionais
  • Exercício Slide 19 Solução
  • VLA
  • Exercícios
    • AFA 9.8 Função que recebe 1 rectângulo (vector) e 1 ponto (vector) e determina se o ponto está dentro do vector.
    • AFA 9.9 Função que recebe 2 rectângulo (vector) e determina se existe sobreposição.

11ABR 5ª 08-11H Strings

  • Laboratório 1

  • Esclarecer inicialização de array

    #include <stdio.h>
    
    void print_array(int arr[], int size) {
      for (int i = 0; i < size; i++)
        printf("%d ", arr[i]);
    }
    
    int main(void) {
      int ary[5] = {[3]=4, [4]=5};
        print_array(ary, 5);
      return 0;
    }
  • Strings - teoria

  • Exercícios

17ABR

Exercícios arrays

  • Função que calcula máximo de array de inteiros.

    #include <stdio.h>
    
    // Função para calcular o máximo de um array de inteiros
    int calcularMaximo(int array[], int tamanho) {
        int maximo = array[0]; // Assumimos o primeiro elemento como máximo inicialmente
    
        // Percorremos o array para encontrar o máximo
        for (int i = 1; i < tamanho; i++) {
            if (array[i] > maximo) {
                maximo = array[i];
            }
        }
    
        return maximo;
    }
    
    int main() {
        int array[] = {10, 5, 8, 15, 3, 20};
        int tamanho = sizeof(array) / sizeof(array[0]);
    
        // Chamamos a função calcularMaximo para obter o máximo do array
        int maximo = calcularMaximo(array, tamanho);
    
        printf("O máximo do array é: %d\n", maximo);
    
        return 0;
    }
  • Função que devolve a posição onde está o valor máximo num array de inteiros.

    // Função para encontrar a posição do máximo em um array de inteiros
    int encontrarPosicaoMaximo(int array[], int tamanho) {
        int posicaoMaximo = 0; // Assumimos a primeira posição como a posição do máximo inicialmente
        int maximo = array[0]; // Assumimos o primeiro elemento como máximo inicialmente
    
        // Percorremos o array para encontrar o máximo e sua posição
        for (int i = 1; i < tamanho; i++) {
            if (array[i] > maximo) {
                maximo = array[i];
                posicaoMaximo = i;
            }
        }
    
        return posicaoMaximo;
    }
  • Função que ordena um array de inteiros. Ajuda: Bubble sort Solução AFA 9.3. v1 Solução AFA 9.3. v2

  • King 8.1 Solução

  • King 8.7 Solução

  • AFA 9.2 com base no exercício de ordenar anterior

Exercícios strings

  • King 13.1 (feito?)
  • King 13.4 ❌
  • King 13.11 ❌

15MAI 4ª 08-10H / 4ª 10-12H

  • Exercicios
    • A13.1 ✅
    • A13.2 ✅
    • A13.6 ❌
    • A13.12 sem usar arrays ❌
  • Discussão sobre os labs

16MAI 5ª 09-12H

  • Memória dinâmica (teoria)
  • Discussão sobre projecto
  • Demo números aleatórios
  • Prática memória dinâmica
    • A14.1 ✅
    • A14.2 ❌

22MAI 4ª 08-10H / 4ª 10-12H

  • Discutir aulas extra.
  • Data teste.
  • Exercícios
    • Cifra de César c/ ficheiros.
    • A13.7
    • A13.8
    • A13.10

23MAI 5ª 09-12H

Não há aula.

29MAI 4ª 08-10H / 4ª 10-12H

Laboratório 3 - struct e ficheiros.

06JUN 5ª 09-11H

  • Teoria sobre estruturas de dados dinâmicas
  • Exercícios
    • AFA 15.1
    • AFA 15.2
    • AFA 15.3