cco 016 – fundamentos de programaçãorcosta62br.unifei.edu.br/com110/aula_06.pdf · um algoritmo...

Post on 28-Oct-2020

1 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

CCO 016 – Fundamentos de Programação

Prof. Roberto Affonso da Costa JuniorProf. Roberto Affonso da Costa Junior

Universidade Federal de ItajubáUniversidade Federal de Itajubá

Aula 06Aula 06

● Estruturas Sequenciais● Operações matemáticas● Comandos Sequenciais● Comandos Sequenciais na Linguagem de Programação

C/C++

Estruturas SequenciaisEstruturas Sequenciais

● Definimos Estruturas SequenciaisEstruturas Sequenciais como sendo a sequência de passos feito da forma Top-DownTop-Down, isto é, de cima para baixo.

● Por exemplo:

● Qual o valor de B e de A e B?

A ← 10B ← 20

imprimaimprima(A,B)B ← 5

imprimaimprima(A, B)

Estruturas SequenciaisEstruturas Sequenciais

● Uma estrutura sequencial realiza um conjunto predeterminado de comandos de forma sequencial, na ordem em que foram declarados no código fonte. A cada instrução, o contador de programa é incrementada (PORTUGOL).

● Uma estrutura sequencial é delimitada pelas palavras reservadas Início e Fim e contém basicamente comandos de atribuição, comandos de entrada e comandos de saída. Os algoritmos do capítulo anterior são algoritmos que utilizam uma única estrutura sequencial.

Estruturas SequenciaisEstruturas Sequenciais

● Um algoritmo puramente sequencial é aquele cuja execução é efetuada em ordem ascendente dos números que identificam cada passo. A passagem de um passo ao seguinte é natural e automática, e cada passo é executado uma única vez.

1. início2. A ← 103. B ← 204. imprimaimprima(A,B)5. B ← 56. imprimaimprima(A,B)7. fim

1. início2. A ← 103. B ← 204. imprimaimprima(A,B)5. B ← 56. imprimaimprima(A,B)7. fim

Estruturas SequenciaisEstruturas Sequenciais

● Esquema Genérico de Algoritmos em PortugolINICIO declaração de Variáveis/Constantes inicialização de variáveis/constantes {comentários} bloco de comandos de entrada de dados {comentários} bloco de comandos de atribuição {comentários} bloco de comandos de saída de dadosFIM

● Esquema Genérico de Algoritmos em Fluxograma

INICIO

FIM

Leia

Imprima

Atribuição

Operações MatemáticasOperações Matemáticas

● As operações matemáticas mais comuns são:As operações matemáticas mais comuns são:

Nome da operaçãoNome da operação Simbolo em portugalSimbolo em portugal

Soma ++Subtração --

Multiplicação **Divisão //

Programa com Operações Programa com Operações MatemáticasMatemáticas

● Entre com os valores 10 e 100. Armazene-os em duas variáveis A e B do tipo inteiro. Após isso faça as seguintes operações:a) SomeSome os dois valores e guardeguarde na variável C;b) SubtraiaSubtraia o valor de A pelo valor de B e guardeguarde na variável D;c) MultipliqueMultiplique os dois valores e guardeguarde na variável E;d) DividaDivida o valor de B pelo valor de A e guardeguarde na variável F;e) GuardeGuarde na variável G o valor de A. GuardeGuarde na variável A o valor de B. GuardeGuarde a variável B o valor de G.

Solução em PortugalSolução em Portugalinicioinicio

inteirointeiro A, B, C, D, E, F, GA ← 10B ← 100C ← A + BD ← A – BE ← A * BF ← A / BG ← AA ← BB ← Gimprimaimprima (A, B, C, D, E, F, G, A, B)

fimfim

Operador divisãoOperador divisão

● O operador de divisão tem quatro formas de trabalhar e apresenta dois tipos de resultados:

– inteiro / inteiro = inteiro (7 / 2 = 3)– inteiro / real = real (7 / 1.4 = 5.0)– real / inteiro = real (1.4 / 7 = 0.2)– real / real = real (8.4 / 2.8 = 3.0)

Operações MatemáticasOperações Matemáticas

● As operações resto de divisão, raiz quadrada, potencia, módulo e seno são utilizadas como função:

Nome da funçãoNome da função Função em Função em portugalportugal

Função Função matemáticamatemática

Resto da divisão resto (a, b)resto (a, b)Módulo abs (x)abs (x) | x |

Raiz quadrada raiz (x)raiz (x)Potencia pot (b,e)pot (b,e) be

Exponenciação exp (x)exp (x) ex

√ x

Operações MatemáticasOperações Matemáticas

● Continuação

Nome da funçãoNome da função Função em Função em portugalportugal

Função Função matemáticamatemática

Seno sen (x)sen (x) sen xCosseno cos (x)cos (x) cos xTangente tan (x)tan (x) tan x

Logaritmo log (x)log (x) log xLogaritmo Neperiano

ln (x)ln (x) ln x

Operações MatemáticasOperações Matemáticas

● Continuação

Nome da funçãoNome da função Função em Função em portugalportugal

Função Função matemáticamatemática

Arco Seno asen (x)asen (x) asen xArco Cosseno acos (x)acos (x) acos xArco Tangente atan (x)atan (x) atan x

Teto teto (x)teto (x)piso piso (x)piso (x)

⌈x ⌉

⌊x ⌋

Programa com Funções Programa com Funções MatemáticasMatemáticas

● Leia um ângulo em graus, transforme para radiano, calcule o seno, cosseno e tangente do ângulo e apresente no final os resultados calculados da seguinte forma:

– seno(30o) = 0.5– cosseno(30o) = 0.866– tangente(30o) = 0.577

Solução em PortugalSolução em Portugal

inicioiniciorealreal x, y, z, w, angleialeia (ang)x ← ang * 3.14159 / 180y ← sen (x)z ← cos (x)y ← tan (x)imprimaimprima ("sen (", ang, ") = ",y)imprimaimprima ("cos (", ang, ") = ",z)imprimaimprima ("tan (", ang, ") = ",w)

fimfim

Exemplo 1Exemplo 1

● Leia quatro medidas e calcule a média aritmética entre elas.

Solução em PortugalSolução em Portugal

inicioinicio realreal n1, n2, n3, n4, soma, media imprimaimprima ("entre com o valor de n1: ") leialeia (n1) imprimaimprima ("entre com o valor de n2: ") leialeia (n2) imprimaimprima ("entre com o valor de n3: ") leialeia (n3) imprimaimprima ("entre com o valor de n3: ") leialeia (n4)

Solução em PortugalSolução em Portugal

soma ← n1 + n2 + n3 + n4

media ← soma / 4

imprimaimprima ("A média dos 4 números é: ", media)

FIMFIM

Solução em PortugalSolução em Portugal● Fluxograma:Fluxograma:

INICIO

n1, n2, n3, n4

Soma ← n1 + n2 + n3 + n4Media ← soma / 4

‘ Media = ’, Media

FIM

Solução em PortugalSolução em Portugal● Testando o programa anteriorTestando o programa anterior

n1 = 10.0n2 = 5.0n3 = 7.0n4 = 8.0

soma ← 10.0 + 5.0 + 7.0 + 8.0media ← 30 / 4

media = 7.5

Exemplo 2Exemplo 2

● Elabore um programa que leia um valor de temperatura em graus Celsius, calcule e exiba a temperatura equivalente em graus Kelvin, sabendo que K = C + 273.

Solução em PortugalSolução em Portugal

InicioIniciorealreal K, Cimprimaimprima ("entre com a temperatura em Celsius: ")leialeia ( C )

K ← C + 273

imprimaimprima ("A temperatura em Kelvin é: ", K)FimFim

Solução em PortugalSolução em Portugal● Fluxograma:Fluxograma:

INICIO

C

K ← C + 273

‘ Kelvin = ’, K

FIM

Solução em PortugalSolução em Portugal● Testando o programa anteriorTestando o programa anterior

C = 10.0

k ← 10.0 * 25.4

Kelvin = 254.0

Exemplo 3Exemplo 3

● Ler o nome de um cliente de fast food e a quantidade de cada item do menu que ele vai pedir. Exiba o nome do cliente e o total da compra.

MENU

Hot dog R$ 2,50

Hambúrguer R$ 4,00

Cheeseburguer R$ 4,50

Refrigerante R$ 2,00

Batatas fritas R$ 3,50

Solução em PortugalSolução em Portugal

InicioIniciocadeiacadeia nomeinteirointeiro qhd, qha, qch, qre, qbfrealreal pthd, ptha, ptch, ptre, ptbf, ptfimprimaimprima ("entre com o nome do cliente: " )leialeia (nome)imprimaimprima ("entre com a quantidade de hot dog: " )leialeia (qhd)imprimaimprima ("entre com a qtdade de hambúrguer: ")leialeia (qha)imprimaimprima ("entre com a qtid. de cheeseburguer: ")leialeia (qch)

Solução em PortugalSolução em Portugal

imprimaimprima ("entre com a qtdade de refrigerante: ") ("entre com a qtdade de refrigerante: ")leialeia (qre) (qre)imprimaimprima ("entre com a qtdade de batatas fritas: ") ("entre com a qtdade de batatas fritas: ")leialeia ( qbf ) ( qbf )pthd ← qhd * 2.5pthd ← qhd * 2.5ptha ← qha * 4.0ptha ← qha * 4.0ptch ← qch * 4.5ptch ← qch * 4.5ptre ← qre * 2.0ptre ← qre * 2.0ptbf ← qbf * 3.5ptbf ← qbf * 3.5ptf ← qhd + qha + qch + qre + qbfptf ← qhd + qha + qch + qre + qbfimprimaimprima ( “ Cliente: “, nome) ( “ Cliente: “, nome)imprimaimprima ( “ O valor devido é: R$ “, ptf) ( “ O valor devido é: R$ “, ptf)

FimFim

Solução em PortugalSolução em Portugal● Fluxograma:Fluxograma:

INICIO

nome, qhd, qha, qch, qre, qbf

pthd ← qhd * 2.5ptha ← qha * 4.0ptch ← qch * 4.5ptre ← qre * 2.0ptbf ← qbf * 3.5

ptf ← pthd + ptha + ptch + ptre + ptbf

1

Solução em PortugalSolução em Portugal

● Fluxograma:Fluxograma:

“ Cliente: “, nome

FIM

1

“ O valor devido é: R$ “, ptf

Solução em PortugalSolução em Portugal● Testando o programa anteriorTestando o programa anterior

nome = “Roberto Costa”qhd = 0qha = 0qch = 1qre = 2qbf = 1

Solução em PortugalSolução em Portugal● Testando o programa anteriorTestando o programa anterior

pthd = 0 * 2.5ptha = 0 * 4.0ptch = 1 * 4.5ptre = 2 * 2.0ptbf = 1 * 3.5

Solução em PortugalSolução em Portugal● Testando o programa anteriorTestando o programa anterior

ptf = 0.0 + 0.0 + 4.5 + 4.0 + 3.5

Cliente : Roberto Costa

O valor devido é: R$ 12.00

Estrutura Sequencial em C/C++Estrutura Sequencial em C/C++● Uma estrutura sequencial realiza um conjunto

predeterminado de comandos de forma sequencial, na ordem em que foram declarados no código fonte.

Estrutura Sequencial em C/C++Estrutura Sequencial em C/C++● Ela é delimitada na linguagem C/C++ pelos caracteres

{ e } e contém basicamente comandos de atribuição, comandos de entrada e comandos de saída.

#include <bits/stdc++.h>using namespace std;int main() {

// corpo do programareturn 0;

}

Estrutura Sequencial em C/C++Estrutura Sequencial em C/C++● Operações matemáticas simples:Operações matemáticas simples:

● OBSERVAÇÃO: OBSERVAÇÃO: O resto da divisão na linguagem C/C++ é feito conforme as quatro operações matemáticas básicas.

Nome da operaçãoNome da operação Simbolo em C/C++Simbolo em C/C++

Soma ++Subtração --

Multiplicação **Divisão //

Resto da Divisão %%

Programa com Operações Programa com Operações MatemáticasMatemáticas

● Entre com os valores 10 e 100. Armazene-os em duas variáveis A e B do tipo inteiro. Após isso faça as seguintes operações:a) SomeSome os dois valores e guardeguarde na variável C;b) SubtraiaSubtraia o valor de A pelo valor de B e guardeguarde na variável D;c) MultipliqueMultiplique os dois valores e guardeguarde na variável E;d) DividaDivida o valor de B pelo valor de A e guardeguarde na variável F;e) GuardeGuarde na variável G o valor de A. GuardeGuarde na variável A o valor de B. GuardeGuarde a variável B o valor de G.

Solução em C/C++Solução em C/C++

#include <bits/stdc++.h>using namespace std;

int main() {

int A, B, C, D, E, F, G; //Atribuindo valores a A e B A = 10; B = 100; printf ("A = %d\n", A); printf ("B = %d\n", B);

Solução em C/C++Solução em C/C++

//Realizando as operações C = A + B; D = A - B; E = A * B; F = A / B; G = A; A = B; B = G;

Solução em C/C++Solução em C/C++

//Imprimindo os valores das Variáveis printf ("C = %d\n", C); printf ("D = %d\n", D); printf ("E = %d\n", E); printf ("F = %d\n", F); printf ("G = %d\n", G); printf ("A = %d\n", A); printf ("B = %d\n", B); return 0;}

Entrada/Saída do ProgramaEntrada/Saída do Programa

● Resultado do programa.

A = 10A = 10B = 100B = 100C = 110C = 110D = -90D = -90E = 1000E = 1000F = 0F = 0G = 10G = 10A = 100A = 100B = 10B = 10

Operações MatemáticasOperações Matemáticas

● As operações raiz quadrada, potencia, módulo e seno são utilizadas como função:

Nome da funçãoNome da função Função em C/C++Função em C/C++ Tipo que retornaTipo que retorna

Teto ceil (x)ceil (x) intPiso floor (x)floor (x) int

Módulo abs (x)abs (x) intMódulo fabs (x)fabs (x) double

Raiz Quadrada sqrt (x)sqrt (x) doublePotência pow (b, e)pow (b, e) double

Operações MatemáticasOperações Matemáticas

● Continuação:

Nome da funçãoNome da função Função em C/C++Função em C/C++ Tipo que retornaTipo que retorna

Exponenciação exp (x)exp (x) doubleLogaritmo log10 (x)log10 (x) doubleLogaritmo Neperiano

log (x)log (x) double

Seno sin (x)sin (x) doubleCosseno cos (x)cos (x) doubleTangente tan (x)tan (x) double

Operações MatemáticasOperações Matemáticas

● Continuação:

● x está em radianos.x está em radianos.● O valor de pi pode ser obtido com as constante:O valor de pi pode ser obtido com as constante: M_PI

Nome da funçãoNome da função Função em C/C++Função em C/C++ Tipo que retornaTipo que retorna

Arco Seno asin (x)asin (x) doubleArco Cosseno acos (x)acos (x) doubleArco Tangente atan (x)atan (x) double

http://www.cplusplus.com/reference/cmath/

Programa com Funções Programa com Funções MatemáticasMatemáticas

● Leia um ângulo em graus, transforme para radiano, calcule o seno, cosseno e tangente do ângulo e apresente no final os resultados calculados da seguinte forma:

– seno(30o) = 0.5– cosseno(30o) = 0.866– tangente(30o) = 0.577

Solução em C/C++Solução em C/C++#include <bits/stdc++.h>using namespace std;int main() { double x, y, z, w, ang; scanf("%lf", &ang); x = ang * 3.14159 / 180; y = sin (x); z = cos (x); w = tan (x); printf ("sen (%.2lf) = %.2lf\n", ang, y); printf ("cos (%.2lf) = %.2lf\n", ang, z); printf ("tan (%.2lf) = %.2lf\n", ang, w); return 0;}

● Resultado do programa.

3030sen (30.00) = 0.50sen (30.00) = 0.50cos (30.00) = 0.87cos (30.00) = 0.87tan (30.00) = 0.58tan (30.00) = 0.58

Entrada/Saída do ProgramaEntrada/Saída do Programa

URI 1001URI 1001

● Fazer o problema 1001 do URI

https://www.urionlinejudge.com.br/judge/pt/problems/view/1001https://www.urionlinejudge.com.br/judge/pt/problems/view/1001

Resolução do Problema 1001Resolução do Problema 1001

#include <bits/stdc++.h>using namespace std;int main() { int A, B, X; scanf ("%d %d", &A, &B); X = A + B; printf("X = %d\n", X); return 0;}

URI 1002URI 1002

● Fazer o problema 1002 do URI

https://www.urionlinejudge.com.br/judge/pt/problems/view/1002https://www.urionlinejudge.com.br/judge/pt/problems/view/1002

Resolução do Problema 1002Resolução do Problema 1002

#include <bits/stdc++.h>using namespace std;int main() { double area, raio, PI = 3.14159; scanf ("%lf", &raio); area = PI * pow(raio, 2); printf("A=%.4lf\n", area); return 0;}

Hierarquia dos OperadoresHierarquia dos Operadores

● A hierarquia dos operadores define a ordem em que uma expressão é calculada;

● Segue-se a seguinte tabela de prioridade para os operadores:

– Parênteses ( mais alta )Parênteses ( mais alta )– Multiplicação e divisãoMultiplicação e divisão– Adição e subtraçãoAdição e subtração

●Operadores com mesma prioridade, a ordem de resolução é da esquerda para a direita.

Operadores InteirosOperadores Inteiros

● Operação constituídas de variáveisvariáveis e constantesconstantes inteirasinteiras

● Resultado é sempre inteirointeiro

● Exemplo:Exemplo:A expressão:A expressão:

5 * 2 / 3Resulta no valor 3

A expressão:A expressão:2 / 3 * 5

Resulta no valor 0

A expressão:A expressão:3 / 2 * 5

Resulta no valor 5

Operadores ReaisOperadores Reais

● Operação constituídas de variáveisvariáveis e constantesconstantes reaisreais

● Resultado é sempre realreal

● Exemplo:Exemplo: A expressão:A expressão:5.0 * 2.0 / 3.0

Resulta no valor 3.333333

A expressão:A expressão:2.0 / 3.0 * 5.0

Resulta no valor 3.333333

A expressão:A expressão:3.0 / 2.0 * 5.0

Resulta no valor 7.500000

TypecastTypecast

● Pode-se forçar temporariamente, a mudança do tipo de uma variável, através do castingcasting do tipo, que consiste em se anteceder o nome da variável com o novo tipo, entre parênteses.

A expressão:A expressão:2 / 3 * 5.0

Resulta no valor 0.000000

A expressão:A expressão:(float) 2 / 3 * 5.0

Resulta no valor 3.333333

TypecastTypecast

● Pode ser utilizado da seguinte forma:

33

#include <bits/stdc++.h>using namespace std;int main() {

int A, B;float C;B = 2;C = 7.0;A = (int) (C / B);printf("%d\n", A);return 0;

}

TypecastTypecast

● Pode ser utilizado da seguinte forma:

#include <bits/stdc++.h>using namespace std;int main() {

int A, B;float C;A = 7;B = 2;C = (float) (A / B);printf("%f\n", C);return 0;

}

3.0000003.000000

TypecastTypecast

● Pode ser utilizado da seguinte forma:

97 - a97 - a

#include <bits/stdc++.h>using namespace std;int main() {

int A;A = 97;printf("%d - %c\n", A, (char) A);return 0;

}

TransformandoTransformando

● Pode ser utilizado da seguinte forma:

60 - F60 - F

#include <bits/stdc++.h>using namespace std;int main() {

int A, B;char C;A = 5;B = 'A' - A;C = 'A' + A;printf("%d - %c\n", B, C);return 0;

}

Tabela ASCIITabela ASCII● O programa anterior funciona devido a tabela ASCII.

Operadores EspeciaisOperadores Especiais

● A linguagem C/C++ tem alguns operadores especiais:Operação Operador Significado

Soma A ++; Soma 1 unidade a variável A

A += n; Soma n unidades a variável A

Subtração A --; Subtrai 1 unidade da variável A

A -= n; Subtrai n unidades da variável A

Multiplicação A *= n; Multiplica a variável A por n

Divisão A /= n; Dividi a variável A por n

Resto da divisão

A %= n; Tira o resto da divisão da variável A por n

n pode ser um número ou uma operação

Atribuição - PythonAtribuição - Python

● A Atribuição de ValoresAtribuição de Valores é a passagem de informação a determinada variável. Toda variável, por sua definição, pode receber valores ou então, pode ter seu valor alterado.

● A linguagem linguagem PythonPython tem definido que o sinal que conhecemos pelo nome de igual ( = ) será o operador de atribuição.

<variável> [operador] <valor><variável> [operador] <valor><variável> = <valor><variável> = <valor>numero = 10numero = 10

http://excript.com/python/operador-de-atribuicao-python.html

ExemploExemplo

● Pode ser utilizado da seguinte forma:

a = 10b = 20print("a = %d" % (a))print("b = %d" % (b))

ExemploExemplo

● Resultado do programa.

a = 10a = 10b = 20b = 20

Entrada/Saída do ProgramaEntrada/Saída do Programa

Atribuição Simples - PythonAtribuição Simples - Python

● A notação de atribuição simplesatribuição simples do PythonPython nos permite atribuir a várias variáveis um mesmo valor numa mesma expressão. Para isso, devemos separar as variáveis que receberam o mesmo valor com vírgulas.

● No exemplo, a variável ‘a’‘a’ armazena 1, a variável ‘b’‘b’ armazena 2 e a variável ‘c’‘c’ armazena 2.

a = 1a = 1b, c = 2b, c = 2

http://excript.com/python/atribuicao-multipla-python.html

ExemploExemplo

● Pode ser utilizado da seguinte forma:

a = 10b, c = 20print("a = %d" % (a))print("b = %d" % (b))print("c = %d" % (c))

ExemploExemplo

● Resultado do programa.

a = 10a = 10b = 20b = 20c = 30c = 30

Entrada/Saída do ProgramaEntrada/Saída do Programa

Atribuição Multiplas - PythonAtribuição Multiplas - Python

● A atribuição múltiplaatribuição múltipla é a capacidade de atribuir um conjunto de valores a um conjunto de variáveis. Ambos conjuntos precisam, obrigatoriamente, possuir a mesma quantidade de elementos, isto é, a quantidade de variáveis a esquerda deve ter a mesma quantidade de valores a direita.

● No exemplo, a variável ‘x’‘x’ armazena 10 e a variável ‘y’‘y’ armazena 20.

x, y = 10, 20 x, y = 10, 20

http://excript.com/python/operador-de-atribuicao-python.html

Exemplo - SugestãoExemplo - Sugestão

● Faça o seguinte programa.

a, b, c = 2, 4, 8print("a = %d" % (a))print("b = %d" % (b))print("c = %d" % (c))a, b, c = a * 2, a + b + c, a * b * cprint("a = %d" % (a))print("b = %d" % (b))print("c = %d" % (c))

● Resultado do programa.

a = 2a = 2b = 4b = 4c = 8c = 8a = 4a = 4b = 14b = 14c = 64c = 64

Entrada/Saída do ProgramaEntrada/Saída do Programa

Operações Matemáticas - PythonOperações Matemáticas - Python

● As operações matemáticas mais comuns são:As operações matemáticas mais comuns são:

Nome da operaçãoNome da operação Simbolo em pythonSimbolo em python

Soma ++Subtração --

Multiplicação **Divisão //

Divisão inteiro ////Potenciação ****

Resto da divisão %%

http://excript.com/python/operador-aritmetico-em-python.html

ExemploExemplo

● Pode ser utilizado da seguinte forma:

a = int(input())b = int(input())c = a + bd = a - be = a * bf = a / bg = a // bh = a ** bi = a % b

print("a = %d" % (a))print("b = %d" % (b))print("a + b = %d" % (c))print("a - b = %d" % (d))print("a * b = %d" % (e))print("a / b = %f" % (f))print("a // b = %f" % (g))print("a ** b = %d" % (h))print("a %% b = %d" % (i))

ExemploExemplo

● Resultado do programa.

7733a = 7a = 7b = 3b = 3a + b = 10a + b = 10a - b = 4a - b = 4a * b = 21a * b = 21a / b = 2.333333a / b = 2.333333a // b = 2.000000a // b = 2.000000a ** b = 343a ** b = 343a % b = 1a % b = 1

Entrada/Saída do ProgramaEntrada/Saída do Programa

Operações MatemáticasOperações Matemáticas

● As operações raiz quadrada, potencia, módulo e seno são utilizadas como função:

Nome da funçãoNome da função Função em PythonFunção em Python Tipo que retornaTipo que retorna

Tetov math.ceil(x)math.ceil(x) intPiso math.floor(x)math.floor(x) int

Módulo math.fabs(x)math.fabs(x) int/floatRaiz Quadrada math.sqrt(x)math.sqrt(x) double

Potência math.pow(b, e)math.pow(b, e) double

Operações MatemáticasOperações Matemáticas

● Continuação:

Nome da funçãoNome da função Função em PythonFunção em Python Tipo que retornaTipo que retorna

Exponenciação math.exp(x)math.exp(x) doubleLogaritmo math.log10(x)math.log10(x) doubleLogaritmo Neperiano

math.log (x)math.log (x) double

Seno math.sin(x)math.sin(x) doubleCosseno math.cos(x)math.cos(x) doubleTangente math.tan(x)math.tan(x) double

Operações MatemáticasOperações Matemáticas

● Continuação:

● x está em radianos.x está em radianos.● O valor de pi pode ser obtido com as constante:O valor de pi pode ser obtido com as constante: math.pi

Nome da funçãoNome da função Função em PythonFunção em Python Tipo que retornaTipo que retorna

Arco Seno math.acos(x)math.acos(x) doubleArco Cosseno math.asin(x)math.asin(x) doubleArco Tangente math.atan(x)math.atan(x) double

https://docs.python.org/pt-br/3/library/math.html

Programa com Funções Programa com Funções MatemáticasMatemáticas

● Leia um ângulo em graus, transforme para radiano, calcule o seno, cosseno e tangente do ângulo e apresente no final os resultados calculados da seguinte forma:

– seno(30o) = 0.5– cosseno(30o) = 0.866– tangente(30o) = 0.577

Solução em PythonSolução em Python

import mathang = float(input())x = math.radians(ang)y = math.sin(x)z = math.cos(x)w = math.tan(x)print("sen (%.2lf) = %.2lf" % (ang, y))print("cos (%.2lf) = %.2lf" % (ang, z))print("tan (%.2lf) = %.2lf" % (ang, w))

● Resultado do programa.

3030sen (30.00) = 0.50sen (30.00) = 0.50cos (30.00) = 0.87cos (30.00) = 0.87tan (30.00) = 0.58tan (30.00) = 0.58

Entrada/Saída do ProgramaEntrada/Saída do Programa

URI 1001URI 1001

● Fazer o problema 1001 do URI

https://www.urionlinejudge.com.br/judge/pt/problems/view/1001https://www.urionlinejudge.com.br/judge/pt/problems/view/1001

Resolução do Problema 1001Resolução do Problema 1001

a = int(input())b = int(input())x = a + bprint("X = %d" % x)

URI 1002URI 1002

● Fazer o problema 1002 do URI

https://www.urionlinejudge.com.br/judge/pt/problems/view/1002https://www.urionlinejudge.com.br/judge/pt/problems/view/1002

Resolução do Problema 1002Resolução do Problema 1002

raio = float(input())pi = 3.14159area = pi * (raio ** 2)print("A=%.4lf" % area)

Operadores EspeciaisOperadores Especiais

● A linguagem Python tem alguns operadores especiais:Operação Operador Significado

Soma A += n; Soma n unidades a variável A

Subtração A -= n; Subtrai n unidades da variável A

Multiplicação A *= n; Multiplica a variável A por n

Divisão A /= n; Dividi a variável A por n

Resto da divisão

A %= n; Tira o resto da divisão da variável A por n

n pode ser um número ou uma operação

http://excript.com/python/operadores-de-atribuicao-compostos-python.html

ExemploExemplo● Pode ser utilizado da seguinte forma:

a = 10print("a = %d" % (a))a += 5print("a += %d" % (a))a -= 7print("a -= %d" % (a))a *= 2print("a *= %d" % (a))a /= 3print("a /= %d" % (a))a %= 5print("a %%= %d" % (a))

ExemploExemplo

● Resultado do programa.

a = 10a = 10a += 15a += 15a -= 8a -= 8a *= 16a *= 16a /= 5a /= 5a %= 0a %= 0

Entrada/Saída do ProgramaEntrada/Saída do Programa

ExercíciosExercícios

● https://www.urionlinejudge.com.br/judge/en/loginhttps://www.urionlinejudge.com.br/judge/en/loginURI 1003 a 1021, 1930, 1959, 1963.URI 1003 a 1021, 1930, 1959, 1963.

● Sugestão para o 1021, trate o número real como dois inteiros, basta Sugestão para o 1021, trate o número real como dois inteiros, basta usar o usar o scanf("%d.%d", &n, &m);scanf("%d.%d", &n, &m);..

● https://open.kattis.com/problems?order=problem_difficulty&dir=aschttps://open.kattis.com/problems?order=problem_difficulty&dir=ascFaktor, R2, Bijele Faktor, R2, Bijele

● https://neps.academy/https://neps.academy/● Soma Fácil, Soma, Subtração, Soma Fácil, Soma, Subtração, Divisão, Área do Quadrado, Área do Divisão, Área do Quadrado, Área do

Retângulo, Área do Triângulo Retângulo, Área da Circunferência, Retângulo, Área do Triângulo Retângulo, Área da Circunferência, Média Inteira, Média Inteira Ponderada, Potências Simples, Minutos Média Inteira, Média Inteira Ponderada, Potências Simples, Minutos Para Horas e Minutos, Horas e Minutos Para Minutos, Piso da Escola, Para Horas e Minutos, Horas e Minutos Para Minutos, Piso da Escola, Troco em Moedas, Troco Fácil, TomadasTroco em Moedas, Troco Fácil, Tomadas

top related