An open API service indexing awesome lists of open source software.

https://github.com/fabianaferreira/applied-math-topics-cpp

Repositories for the exercises of the subject Applied Math Topics, developed while in UFRJ
https://github.com/fabianaferreira/applied-math-topics-cpp

cpp study

Last synced: about 1 year ago
JSON representation

Repositories for the exercises of the subject Applied Math Topics, developed while in UFRJ

Awesome Lists containing this project

README

          

# Programação 1

## Introdução

Repositório destinado à disciplina Tópicos da Matemática Avançada A: Programação I. Os programas aqui desenvolvidos serão divididos pela linguagem de programação.

## C++

Foi criado um `Makefile` para seja mais fácil de compilar, considerando que não utilizo nenhuma IDE para tal, apenas linha de comado. Há dois comandos implementados no `Makefile`: `make`, que faz a compilação e a linkedição e o `make clean`, que remove os `.o` e executáveis.

### Listas

#### Lista 1

- Uma calculadora de equações do segundo grau
- N primeiros múltiplos dos números 5 e 7 (ou de X e Y)
- Soma de vetores de N coordenadas
- Quais os postos no raio de X km da minha localização?

#### Lista 2

Para essa lista, considero que todos os exercícios têm uma entrada com o usuário. Para tanto, dois arquivos serão criados, um para o exercício 2 dessa lista e outro para os demais, pois utilizarei a ideia do primeiro para fazer um menu de interação com o usuário para o segundo.

- Soma dos dígitos de um número dado por uma entrada do usuário
- Soma dos termos ímpares de um valor da sequência de Fibonacci (que não exceda quatro milhões)
- Maior fator primo de 3852914583882
- Escrever por extenso um número dado pelo usuário de até cinco algarismos
- Criar um menu de opções para o usuário com as seguintes opções: soma de dois vetores, subtração de dois vetores e sair do programa (essa implementação de um menu já está sendo feita para o usuário navegar entre as questões da lista).

#### Lista 3

- Tabela ASCII com possibilidade de entrada de usuário para o início, o fim e a quantidade de linhas por página, para melhor formatação
- Tabela Unicode com possibilidade de entrada de usuário para o início, o fim e a quantidade de linhas por página, para melhor formatação. O usuário também pode selecionar qual língua deseja exibir: russo, grego ou braille
- Leitura de arquivos com extensão `.txt` para contagem de ocorrências de palavras
- Leitura de um arquivo `.csv` para contagem do número de linhas e colunas

### Estudos Dirigidos

#### Estudo Dirigido 1

Desenvolvimento de uma calculadora vetorial simples. O programa irá apresentar um menu de opções, onde o usuário poderá escolher dentre uma lista de operações matemáticas com vetores ou de seleção de parâmetros para a calculadora.

#### Estudo Dirigido 2

Desenvolvimento de uma calculadora matricial. O programa irá apresentar um menu de opções, onde o usuário poderá escolher dentre uma lista de operações matemáticas com matrizes ou de seleção de parâmetros para a lista de matrizes. Tal lista é feita com armazenamento persistente, e poderá ser alterada durante a execução do programa. Para isso, será utilizada uma estrutura de dados que será escrita novamente no arquivo ao término do programa.

#### Estudo Dirigido 3

Desenvolvimento de uma calculadora matricial com uso de orientação à objeto para introdução de conceitos de polimorfismo, visando a otimização de cálculos para matrizes triangulares ou diagonais.

- [TODO] A lógica otimizada para multiplicação de matrizes triangulares está implementada, mas seria interessante adicionar também uma sobrecarga que considere otimizações inclusive para operações que envolvam uma matriz triangular e uma matriz genérica.