Escolar Documentos
Profissional Documentos
Cultura Documentos
Carroceria Motor
Portas dianteiras,
Bloco do motor,
Portas traseiras,
Pistões, válvulas, filtros,
Capô, Grade frontal,
Injeção eletrônica,
Parte superior da lataria,
Propulsão do Motor (Gasolina,
Tampa do tanque, ..
Álcool, Diesel, Elétrico, híbridos, ... )
Modularidade em Grandes Projetos de Engenharia
Algoritmos e Técnicas de Programação I – Prof. Piteri
facilita os recalls;
Detalhes Importantes
Cada componente possui um propósito bem definido, ou seja, deve
atender aos requisitos que se espera dele (saída);
bem definidas;
Fabricantes:
Aula 01 – Funções
• Placas mãe;
• Processadores;
• Memórias (RAM, harddisk, pendrives, ...)
Mouse/teclado
• Placas de Vídeo; /scanner
• Dispositivos físicos de Entrada e Saída Impressoras
Monitores
Câmeras fotográficas
Modularidade na Indústria de Hardware
Algoritmos e Técnicas de Programação I – Prof. Piteri
Importante
A busca por padrões é uma constante na indústria,
incluindo a de software e a de hardware.
Programação Estruturada
Algoritmos e Técnicas de Programação I – Prof. Piteri
variáveis locais
Tipo_de_Dado_n Parâmetro_n )
{
Declaração de variáveis locais;
return( expressão );
}
Forma Geral de uma Função em C
Algoritmos e Técnicas de Programação I – Prof. Piteri
Onde:
return: Toda função deve possuir uma instrução desse tipo. Esse
comando, quando executado provoca um retorno imediato e incondicional
para a posição no código onde a função foi referenciada (chamada),
carregando consigo um valor de retorno, que é substituído na respectiva
Aula 01 – Funções
Importante
Mesmo uma função estando correta individualmente, a sua integração
ao sistema e a ”interação” dessa, com outras funções, pode apresentar
problemas.
Vantagens no Uso de Funções
Algoritmos e Técnicas de Programação I – Prof. Piteri
O uso de funções:
diminui o tamanho total do código (número de linhas);
torna o código mais legível;
facilita o desenvolvimento, gerenciamento e manutenção de sua
aplicação;
facilita o processo de documentação interna;
cria níveis de abstração (o que faz? Como faz?) (principalmente
quando usamos bibliotecas já existentes);
Vantagens no Uso de Funções
Algoritmos e Técnicas de Programação I – Prof. Piteri
Quem usa as funções sabe “o que” elas fazem, muitas vezes não
interessa saber “como” elas fazem. Isso simplifica a vida do programador,
já que ele se preocupa apenas com as funcionalidades existentes (o que
ela faz). Isso quando você estiver usando alguma função (biblioteca)
desenvolvida por outro programador;
Vantagens no Uso de Funções
Algoritmos e Técnicas de Programação I – Prof. Piteri
Obviamente que para usar as funções de alguma biblioteca que não foi
desenvolvida por você, é necessário ler uma documentação e ser capaz
de entender a sua interface (número de parâmetros e restrições
associados aos respectivos tipos de dados), assim como o tipo de dado
relativo ao valor de retorno;
Aula 01 – Funções
Exemplo:
Por exemplo, para usar a função exp(.) da <math.h> você deve saber
que existe um único argumento real (double) e o valor retornado
também é do tipo double e corresponde ao valor da função exponencial
no argumento que foi passado. Você usa a função (sabe o que ela faz),
mas não sabe coma ela foi implementada (como faz). É como se ela fosse
uma pequena “caixa preta”.
} // Fibonacci
return(app);
Aula 01 – Funções
} // Raiz_2
return(app);
} // Raiz_3
Função Primo
Algoritmos e Técnicas de Programação I – Prof. Piteri
short Primo(int P) { // P ≥ 2
Aula 01 – Funções
return(1);
} // Primo
Função Coeficiente Binomial
Algoritmos e Técnicas de Programação I – Prof. Piteri
n n!
= ( n, p ≥ 0, n ≥ p)
p p !( n − p )!
Aula 01 – Funções
4 4! 4.3! 4
= = = =4
3 3!( 4 − 3) ! 3!.1! 1
Função Coeficiente Binomial
Algoritmos e Técnicas de Programação I – Prof. Piteri
if (N == 0) return (fat);
else for ( ;i<=N; i++) fat = fat*i;
return (fat);
} // Fatorial
return( Fatorial(N)/(Fatorial(P)*Fatorial(N-P)) );
}
Várias referências a
função Fatorial(.).
Função Coeficiente Binomial
Algoritmos e Técnicas de Programação I – Prof. Piteri
main(.)
Coef_Binomial(.) Fatorial(.)
Próximas Aulas
Algoritmos e Técnicas de Programação I – Prof. Piteri
Conjectura de Golbach:
Todo número par p ( p ≥ 4), pode ser escrito como a soma de dois
números primos p1 e p2, tal que p = p1+p2.
Aula 01 – Funções
Números Felizes:
Exemplos:
42 + 52 + 92 + 92 = 203
22 + 02 + 32 = 13
12 + 32 = 10
12 + 02 = 1
Exercícios Adicionais
Algoritmos e Técnicas de Programação I – Prof. Piteri
Propriedades:
Os números 203, 13 e 10 são números felizes;
Números tristes resultam indefinidamente em torno dos números 4, 16, 37, 58, 89,
145, 42, 20, voltando ao 4.
Primos Gêmeos: