[Linguagem e técnicas de programação] Flashcards

1
Q

O que é Algoritmo

A

Um algoritmo é uma sequência finita e bem definida de instruções ou regras que descrevem uma solução passo a passo para um problema ou tarefa específica.

Algoritmo de Soma de Dois Números Inteiros:

  1. Receba o primeiro número inteiro (A).
  2. Receba o segundo número inteiro (B).
  3. Some A e B.
  4. Armazene o resultado da soma em uma variável (C).
  5. Mostre o valor de C como a resposta da soma.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

O que é um Programa

A

Um programa de computador é um conjunto de instruções, escrito por meio de uma
linguagem de programação

  • Exemplo → Calculadora (conjunto de instruções para que seja possível a realização de cálculos)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

O que é Lógica de programação

A

Estruturação do pensamento e do raciocínio para resolver problemas de forma eficiente e lógica.

  • Objetivo principal: utilização de técnicas para resolução de problemas
  • Consequentemente, pode-se usar na automação de tarefas
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

[Representação Lógica] - Quais as formas de representar o algoritmo?

A

Maneira de representar de forma lógica, o algoritmo (passo a passo) para a resolução de um problema.
- Descrição narrativa: Português normal
- Fluxograma: simbolos para representação do algoritmo
- Pseudocódigo / Portugol: Português simulando uma linguagem de programação

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

[Representação Lógica] - Descrição narrativa o que é

A

Linguagem comum. utilizada no dia a dia

*PROBLEMA: Uma pessoa está perdida em uma cidade desconhecida e procura a rodoviária; encontra um policial e pede auxílio: – Por favor, como eu chego até a rodoviária?

RESOLUÇÃO com linguagem descritiva: Siga em frente e, na quarta esquina, vire à
direita; siga em frente e, de lá, você já vai vê-la.*

  1. VANTAGENS
    1. Fácil compreensão inicial
    2. Contextualização
    3. linguagem comum
  2. DESVANTAGENS
    1. Falta de precisão → Ambiguidade na interpretação
    2. Difícil implementação para linguagem de programação
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

[Representação Lógica] - Fluxograma o que é

A

Conjunto de símbolos-padrão que contém o passo a passo para resolução do problema.

Fluxograma - simbolos e exemplos

VANTAGENS
- Fácil compreensão

DESVANTAGENS
- Necessário conhecimento dos símbolos e o que eles fazem
- Modificação e edições difíceis

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

[Representação Lógica] - Portugol / Pseudocódigo o que é

A

Linguagem escrita em português com foco na lógica de programação.

  • Não há preocupação com a sintaxe da linguagem

> algoritmo SomaDeDoisNumeros
var numero1, numero2, resultado: inteiroinicio
escreva(“Digite o primeiro número: “)
leia(numero1)

   escreva("Digite o segundo número: ")
   leia(numero2)

   resultado <- numero1 + numero2

   escreva("A soma dos números é: ", resultado) fim
  1. VANTAGENS
    1. linguagem próxima ao português e a linguagem de programação
    2. solução lógica
    3. definição do tipo de dado
  2. DESVANTAGENS
    1. linguagem não oficial
    2. não padronizada
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Teste de mesa, o que é?

A
  • Realiza a validação do algoritmo.
  • Teste manual dos comandos do algoritmo.
  • Permite verificar se o código está realmente
    executando
    a função para o qual foi criado.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Regras para a construção de algoritmos

A
  • Entender o problemaLeitura do problema. Questionamentos para que fique claro
  • Conhecer os resultados esperadosExtração de todas os dados de saídas
  • Informações disponíveisExtração de todos os dados de entrada.
  • Funcionamento do algoritmoIdentifique o processamento principal, os cálculos.
  • VerificaçãoTeste cada passo do algoritmo para validar se o processamento está gerando os dados de saída esperado.
  • NormatizaçãoReveja o algoritmo, revendo as normas e o “Clean Code”.
  • ObjetividadeO algoritmo deve ser de fácil entendimento para quem irá fazer a sua leitura.
  • Simplicidade, não ambiguidadeUse frases ou palavras claras e objetivas para a interpretação
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Entrada, processamento e saída o que são?

A

Entrada → Dado a ser recebido

Processamento → Operação que será realizada

Saída → Valor do dado após ser processado.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Dados, o que são?

A

Dados são fatos brutos, informações ou representações simbólicas de informações em sua forma mais elementar.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

[Armazenamento dos dados] - Variavel, o que é?

A

As variáveis são espaços reservados na memória principal do computador para armazenamento de dados
- usadas para armazenar informações que podem mudar durante a execução de um programa

let idade; // Declaração de uma variável chamada “idade”
idade = 25; // Atribuição de um valor à variável “idade”

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

[Armazenamento dos dados] - Constante, o que é?

A

São valores que não mudam durante a execução de um programa.

const birthdayYear = 2003 // declaração de uma constante, onde o valor do ano de nascimento não irá mudar

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

[Armazenamento dos dados] - Operadores, o que é?

A

Dão símbolos ou palavras-chave que realizam operações em dados.

  • Usados para realizar cálculos matemáticos, comparações, atribuições, entre outras operações.

let x = 10;
let y = 5;
let soma = x + y; // O operador “+” realiza uma operação de adição
let igualdade = (x === y); // O operador “===” verifica se x é igual a y

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Tipos de dados primitivos

A
  • Inteiros → 1, 2, 33, 1000…
  • Reais → 1,99 | 1650,50…
  • Caracteres (Char) e String (Cadeias)
    • Caracteres - Podem ser numéricos ou alfabéticos e representam um único caractere
      • “A”, “8”, “B”
    • String → É um conjunto de caracteres
      • “Kaique”, “1000”, “Kaique1000”
  • Lógicos (Boolean) → Verdadeiro ou Falso
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Nomenclatura das variáveis

A
  • Iniciar com uma letra
  • Não pode conter espaços em branco ou caracteres especiais
  • Os Nomes devem ser significativos e auto-expressivos

let quantidadeDeProdutosEmEstoque; //Camelcase - Junção de letras minusculas e maiusculas

Boas práticas em nomenclaturas

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

Operadores aritméticos

A

**São símbolos que representam operações matemáticas (adução, subtrações…)

Operadores aritméticos

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

Operadores relacionais

A

Estabelece uma relação de verdadeiro ou falso para os valores comparados

Operadores relacionais

19
Q

Operadores lógicos

A

São operações AND, OR e NOT
- Indicam como o código irá se comportar em determinada situação

Operadores lógicos

20
Q

Linearidade o que é?

A

O computador não reconhece as fórmulas matemáticas armadas.

  • Necessários escreve-las de maneira linear, ou seja, representadas na mesma linha.

Linearidade

21
Q

[Linguagem C] - o que é?

A
  • É uma linguagem de programação
  • Projetada para ser usada em uma variedade de aplicações e setores
  • Código-fonte é traduzido em código de máquina executável antes de ser executado pelo computador

Exemplo de código
/* Stdio.h -> funções de entrada e saída. Nesse caso, habilitada a função “printf”*/
#include <stdio.h></stdio.h>

/* Função */
void main()
{
//comentário de uma única linha
printf(“meu primeiro programa em C\n”);
}

22
Q

[Linguagem C] - Site 4 características?

A
  • Linguagem estruturadaCódigo organizado de forma lógica e clara
  • Médio nívelintermédio entre linguagem de máquina e linguagem humana
  • Modularidadedividir um programa componentes menores e independentes.
  • Compilada → Código é traduzido para linguagem de máquina antes de ser executado.
  • Recursos de baixo nívelRealizar operações diretamente relacionadas ao hardware do computador e à memória do sistema.
  • Eficiente e Confiável
  • Simples e de fácil uso
  • Caso sensitivo (sensitive case)distinção entre maiúsculas e minúsculas nas nomenclaturas e comandos
23
Q

[Linguagem C] - Regras da línguagem?

A

Sintaxe muito rígida com regras detalhadas

  • TipagemPropriedade dos dados (inteiro, string, boolean…)
  • DeclaraçõesUsadas para realizar ações, controlar o fluxo do programa, definir estruturas (como funções, loops, condicionais, etc.) e declarar variáveis ou constantes.
  • Expressões → Todo calculo que é realizado, e retorna um valor.
  • FunçõesBlocos de código em programação que têm um nome e são projetados para realizar uma tarefa específica ou uma sequência de ações.
  • Nomes reservados, de acordo com o padrão ANSI
24
Q

[Linguagem C] - Tipos primitivos de dados?

25
Q

[Linguagem C] - Comandos pós barra invertida em C

26
Q

[Linguagem C] - Operadores em C

27
Q

[Linguagem C] - Operadores unitários

A
  • Realizam uma operação em um único valor
  • Usados para realizar ações como incremento, decremento, negação, complemento, entre outras, dependendo do operador em questão.

Operadores unitários

28
Q

[Linguagem C] - Operadores relacionais

A
29
Q

[Linguagem C] - Operadores lógicos

A

Permitem realizar operações de lógica booleana em valores booleanos, ou seja, valores que podem ser verdadeiros (true) ou falsos (false
Operadores Lógicos

30
Q

[Linguagem C] - Entrada e saída de dados

A

A linguagem C não possui comandos de entrada e saída. Elas são feitos por meio de funções através da biblioteca-padrão stdio.h (Standard Input Output).

  • A inclusão é feita no início do programa por meio da instrução: #include <stdio.h></stdio.h>
  • Ela habilita comando como “printf” e “scanf”
31
Q

[Linguagem C][Entrada e saída de dados], função printf(), oq é?

A
  • Função de saída de dados → Exibe as informações na tela ou no console
  • Necessário a especificação do tipo de dado de saída, através da tabela de especificadores:

printf()

32
Q

[Linguagem C][Entrada e saída de dados], função scanf(), oq é?

A

Usada para ler dados da entrada padrão (geralmente o teclado) e armazená-los em variáveis
scanf()

33
Q

[Estruturas condicionais] - o que são?

A

São estruturas de condição (“if”, “else”, “switch”…) que permitem que uma instrução ou bloco de instruções seja executada após a validação da condição estabelecida, retornando verdadeiro ou falso.

Tipos de estruturas condicionais

34
Q

[Estruturas condicionais] - IF, o que é?

A

É uma estrutura condicional, que faz o controle de fluxo da aplicação de acordo com a tomada de decisões com base nas condições definidas.

Estrutura condicional - IF

35
Q

[Estruturas condicionais] - IF… ELSE, o que é?

A

A instrução “if” pode ser seguida da instrução “else”. “else” é uma instrução opcional, que irá executar uma instrução no caso da condição “if” seja falsa.

Estrutura condicional - IF e Else

36
Q

[Estruturas condicionais] - IF… ELSE IF, o que é?

A

Uma instrução if pode ser seguida por uma instrução else if (opcional). Ela é executada no caso da condicional ser falsa. Estabelecendo uma nova condição a ser validada.

  • Ela é usada para testar múltiplas condições em uma sequência.

Estrutura do ELSE IF

37
Q

[Estruturas condicionais] - IF aninhado, o que é?

A

Uma instrução if ou else if dentro de outra instrução if ou else if.

Estrutura do if aninhado

38
Q

[Estruturas condicionais] - Switch, o que é?

A

Permite que uma variável seja testada através da operação de igualdade e comparada com uma lista de valores (inúmeros, o quanto de cases forem necessário). **

  • Cada valor é chamado de case, e a variável é testada para cada case.
  • São permitidos os tipos: int, byte, short, char, Strings

Comandos da Switch

  • BreakUsado para sair da estrutura do switch.
  • DefaultEspecifica um bloco de código que será executado se nenhum dos casos correspondentes for encontrado na expressão avaliada na estrutura switch.

Estrutura do Switch

39
Q

[Estrutura de repetiçao] - o que é?

A

Permite que uma instrução ou conjunto de instruções seja executada várias vezes, enquanto uma determinada condição seja satisfeita.

Estrutura de repetição

40
Q

[Estrutura de repetiçao][FOR] - o que é?

A

Normalmente utilizada quando se sabe o número de vezes em que uma instrução ou conjunto de instruções irá se repetir.

Estrutura e código do FOR

41
Q

[Estrutura de repetiçao][WHILE] - o que é?

A

Utilizada quando não se sabe o número de vezes em que uma instrução ou conjunto de instruções irá se repetir.

Estrutura e código do WHILE

42
Q

[Estrutura de repetiçao][DO WHILE] - o que é?

A

Semelhante ao while, porém o teste só ocorre ao final do comando, ou seja, primeiro executa e depois realiza o teste.

Estrutura de repetição do DO WHILE

43
Q

[Estrutura de repetiçao][Laços aninhados] - o que é?

A

Aninhar uma estrutura de repetição consiste em colocar uma estrutura dentro de outra.
- É utilizado para realizar processamentos mais complexos.

Código e sáida de um laço de repetição aninhado

44
Q

[Estrutura de repetiçao][Comando BREAK] - o que é?

A

Comando utilizado para abortar a execução de uma estrutura. Quando executado dentro de um laço de repetição, o comando break interrompe imediatamente a estrutura.

Comando BREAK