22
FACULDADE ANHANGUERA DE RIO CLARO  FA CULDADE ANHANGUERA DE RIO CLARO  A TIVIDADE PRÁTICA SUPERVISIONADA - PROGRAMAÇÃO ESTRUTURADA I ADRIANO PEREIRA DA SILV A - R.A.: 9902012872 CHRISTOFERSO N HOHNE - R.A.: 8012!90" MARCOS RO#ERTO #AUNGARTNER - R.A.: 9902012$"1 THIAGO RODRIGO SASS - R.A.: 8!121$1!8$ TIAGO MARTINS DOS SANTOS - R.A.: 8!97219877 ANDERSON #RUNO DA SILVA % R.A.: 82078790$8 RIO CLARO % SP 0&0&201$

Atps - Programação Estruturada 1

Embed Size (px)

Citation preview

8/16/2019 Atps - Programação Estruturada 1

http://slidepdf.com/reader/full/atps-programacao-estruturada-1 1/22

FACULDADE ANHANGUERA DE RIO CLARO

  FACULDADE ANHANGUERA DE RIO CLARO

  ATIVIDADE PRÁTICA SUPERVISIONADA -

PROGRAMAÇÃO ESTRUTURADA I

ADRIANO PEREIRA DA SILVA - R.A.: 9902012872

CHRISTOFERSON HOHNE - R.A.: 8012!90"

MARCOS RO#ERTO #AUNGARTNER - R.A.: 9902012$"1

THIAGO RODRIGO SASS - R.A.: 8!121$1!8$

TIAGO MARTINS DOS SANTOS - R.A.: 8!97219877

ANDERSON #RUNO DA SILVA % R.A.: 82078790$8

RIO CLARO % SP

0&0&201$

8/16/2019 Atps - Programação Estruturada 1

http://slidepdf.com/reader/full/atps-programacao-estruturada-1 2/22

E'()( 1

1. Relatório 1 – Planejamento inicial

1.1 - Esboço do programa

I'*+ 1: M*, )/,/)(.

Variável: ) do tipo (('**.

Açes:

1. Apresentar na tela as opçes do aplicativo básico. !"oma# "$btraç%o#

&$ltiplicaç%o# 'ivis%o# E(ponenciaç%o# Rai) *$adrada# Porcentagem e "air+.

,. Receber a opç%o e arma)enar !)+.

I'*+ 2: O)*(34 5* 6+(.

Variáveis: (1# (2 e *6 do tipo /,'*/.

Açes:

1. "olicitar e arma)enar o primeiro valor !(1+.

,. "olicitar e arma)enar o seg$ndo valor !(2+.

. Reali)ar o cálc$lo e arma)enar o res$ltado !*6+.

. Apresentar o res$ltado na tela !*6+.

I'*+ ": O)*(34 5* 6'(34.

Variáveis: (1# (2 e *6 do tipo /,'*/.

Açes:

8/16/2019 Atps - Programação Estruturada 1

http://slidepdf.com/reader/full/atps-programacao-estruturada-1 3/22

1. "olicitar e arma)enar o primeiro valor !(1+.

,. "olicitar e arma)enar o seg$ndo valor !(2+.

. Reali)ar o cálc$lo e arma)enar o res$ltado !*6+.

. Apresentar o res$ltado na tela !*6+.

I'*+ !: O)*(34 5* +'/)/(34.

Variáveis: (1# (2 e *6 do tipo /,'*/.

Açes:

1. "olicitar e arma)enar o primeiro valor !(1+.

,. "olicitar e arma)enar o seg$ndo valor !(2+.

. Reali)ar o cálc$lo e arma)enar o res$ltado !*6+.

. Apresentar o res$ltado na tela !*6+.

I'*+ $: E),*,/(34.

Variáveis: (1# (2 do tipo /,'*/ e *6D* do tipo 5*.

Açes:

1. "olicitar e arma)enar o primeiro valor !(1+.

,. "olicitar e arma)enar o seg$ndo valor !(2+.

. Reali)ar o cálc$lo e arma)enar o res$ltado !*6D*+.

. Apresentar o res$ltado na tela !*6D*+.

8/16/2019 Atps - Programação Estruturada 1

http://slidepdf.com/reader/full/atps-programacao-estruturada-1 4/22

I'*+ : R(/ ;(5(5(.

Variáveis: (1 do tipo /,'*/ e *6F(' do tipo <('.

Açes:

1. "olicitar e arma)enar o primeiro valor !(1+.

,. Reali)ar o cálc$lo da Rai) /$adrada e arma)enar o res$ltado

!*6F('+.

. Apresentar o res$ltado na tela !*6F('+.

I'*+ $: P*,'(=*+.

Variáveis: (1# (2 do tipo /,'*/ e *6F(' do tipo <('.

Açes:

1. "olicitar e arma)enar o primeiro valor !(1+.

,. "olicitar e arma)enar o seg$ndo valor !(2+.

. Reali)ar o cálc$lo e arma)enar o res$ltado !*6F('+.

. Apresentar o res$ltado na tela !*6F('+.

I'*+ : S(/.

Açes:

Apenas e(ec$ta a sa0da do Programa.

8/16/2019 Atps - Programação Estruturada 1

http://slidepdf.com/reader/full/atps-programacao-estruturada-1 5/22

,. Relatório , - omando sistem! +

Anali)ando sobre a 2$nç%o sistem# encontramos 2$ncionalidades interessantes

/$e poderiam ser implementadas no programa:

- 6>6'*+ ?6? - 3impa a tela

- 6>6'*+ @'/''* - m$da o te(to da janela do aplicativo

- 6>6'*+ @ - m$da a cor do te(to do aplicativo

- 6>6'*+ @)(6* - pa$sa o programa at4 /$e se pressione $ma tecla

E'()( 2

. Relatório – Aplicativo 5ásico

.1 - ódigo 6onte do aplicativo

7incl$de 8stdio.9

7incl$de 8stdlib.9

7incl$de 8conio.9

7incl$de 8iostream

7incl$de 8mat9.9

int main!+ ;

<< 'eclaraç%o das variáveis necessárias para a e(ec$ç%o do Aplicativo

c9ar op=

int val1# val,# res=

2loat res6loat=

do$ble res'o$ble=

8/16/2019 Atps - Programação Estruturada 1

http://slidepdf.com/reader/full/atps-programacao-estruturada-1 6/22

<< Responsável por montar o *$adrado na parte "$perior da tela do

aplicativo

 print2!>?t?t?(@?('?('?('?('?('?('?('?('?('?('?('?('?('?(

'?('?('?('?('?('?('?(55?n>+=

 print2!>?t?t?(5A ?(5A?n>+=

 print2!>?t?t?(5A A 3 3 A ' B R A ?(5A?n>+=

 print2!>?t?t?(5A ?(5A?n>+=

 print2!>?t?t?(C?('?('?('?('?('?('?('?('?('?('?('?('?('?(

'?('?('?('?('?('?('?(5?n>+=

<< Apresentaç%o do &en$ de Bperaçes

 print2!>?n?n?t?t!D+ - "oma>+=

 print2!>?n?t?t!-+ - "$btracao>+=

 print2!>?n?t?t!+ - &$ltiplicacao>+=

 print2!>?n?t?t!<+ - 'ivisao>+=

 print2!>?n?t?t!E+ - E(ponenciacao>+=

 print2!>?n?t?t!R+ - Rai) /$adrada>+=

 print2!>?n?t?t!P+ - Porcentagem>+=

 print2!>?n?t?t!"+ - "air>+=

 print2!>?n?t?tBpcao:>+=

<< Arma)ena a tecla digitada pelo s$ário

op F getc9!+=

<< E(ibe na tela a Gecla digitada pelo s$ário

 print2!>Hc># op+=

<< Gran2orma a tecla digitada para caracter maiIsc$lo para comparaç%o

op F to$pper!op+=

<< Reali)a o teste para saber /$al tecla !opç%o+ 2oi escol9ida

8/16/2019 Atps - Programação Estruturada 1

http://slidepdf.com/reader/full/atps-programacao-estruturada-1 7/22

sJitc9 !op+ ;

< Bperaç%o soma disparada# pelo processamento do caracter KDK.

Recebe os valores do s$ário# reali)a o calc$lo e apresenta o res$ltado na tela

<

case KDK: sLstem!>cls>+=

<< 3impa a tela

sLstem!>title Bperaç%o "oma >+=

<< Altera o tit$lo da Manela do Aplicativo

sLstem!>color NO>+=

<< Altera a cor do te(to do aplicativo

 print2!>?n?n?n?t?t"B&A>+=

<< &ostra na tela o te(o >"B&A>

  print2!>?n?n?t?tPrimeiro Valor: >+=

scan2!>Hd># val1+=

<< Arma)ena o te(to digitado pelo s$ário

 print2!>?n?t?t"eg$ndo Valor: >+=

scan2!>Hd># val,+=

res F val1 D val,=

<< Reali)a a soma dos valores

 print2!>?n?n?t?tHd D Hd F Hd ?n?n># val1# val,# res+=

 breaQ=

< Bperaç%o "$btraç%o# disparada pela processamento do caracter K-K.

Recebe os valores do s$ário# reali)a o calc$lo

e apresenta o res$ltado na tela

<

case K-K: sLstem!>cls>+=

sLstem!>title Bperaç%o "$btraç%o >+=

sLstem!>color N>+=

 print2!>?n?n?n?t?t"5GRAAB>+=

  print2!>?n?n?t?tPrimeiro Valor: >+=

scan2!>Hd># val1+=

8/16/2019 Atps - Programação Estruturada 1

http://slidepdf.com/reader/full/atps-programacao-estruturada-1 8/22

 print2!>?n?t?t"eg$ndo Valor: >+=

scan2!>Hd># val,+=

res F val1 - val,=

 print2!>?n?n?t?tHd - Hd F Hd ?n?n># val1# val,# res+=

 breaQ=

< Bperaç%o &$ltiplicaç%o# disparada pela processamento do caracter KK.

Recebe os valores do s$ário# reali)a o calc$lo

e apresenta o res$ltado na tela

<

case KK: sLstem!>cls>+=

sLstem!>title Bperaç%o &$ltiplicaç%o >+=

sLstem!>color NC>+=

 print2!>?n?n?n?t?t&3GSPS3AAB>+=

 print2!>?n?n?t?tPrimeiro Valor: >+=

scan2!>Hd># val1+=

 print2!>?n?n?t?t"eg$ndo Valor: >+=

scan2!>Hd># val,+=

res F val1 val,=

 print2!>?n?n?t?tHd Hd F Hd ?n?n># val1# val,# res+=

 breaQ=

< Bperaç%o 'ivis%o# disparada pela processamento do caracter K<K.

Recebe os valores do s$ário# reali)a o calc$lo

e apresenta o res$ltado na tela

<

case K<K: sLstem!>cls>+=

sLstem!>title Bperaç%o 'ivis%o >+=

sLstem!>color N@>+=

 print2!>?n?n?n?t?t'SVS"AB>+=

 print2!>?n?n?t?tPrimeiro Valor: >+=

scan2!>Hd># val1+=

 print2!>?n?t?t"eg$ndo Valor: >+=

scan2!>Hd># val,+=

8/16/2019 Atps - Programação Estruturada 1

http://slidepdf.com/reader/full/atps-programacao-estruturada-1 9/22

res6loat F !val1 < val,+=

i2!val, FF N+;

 print2!>?n?t?tErro divisao por Tero?n?n: >+=

U else ;

 print2!>?n?n?t?tHd dividido por Hd F H1.N2 ?n?n># val1# val,# res6loat+=

U

 breaQ=

< Bperaç%o E#(ponenciaç%o disparada pela processamento do caracter KEK.

Recebe os valores do s$ário# reali)a o calc$lo

e apresenta o res$ltado na tela

<

case KEK: sLstem!>cls>+=

sLstem!>title Bperaç%o E(ponenciaç%o >+=

sLstem!>color N1>+=

 print2!>?n?n?n?t?tEPBWEWSAAB>+=

 print2!>?n?n?t?t5ase: >+=

scan2!>Hd># val1+=

 print2!>?n?n?t?tE(poente: >+=

scan2!>Hd># val,+=

res'o$ble F !poJ!val1# val,++=

 print2!>?n?n?t?tHd elevado a Hd F Hg ?n?n># val1# val,# res'o$ble+=

 breaQ=

< Bperç%o Rai) *$adrada# disparada pela processamento do caracter KRK.Recebe os valores do s$ário# reali)a o calc$lo

e apresenta o res$ltado na tela

case KRK: sLstem!>cls>+=

sLstem!>title Bperaç%o Rai) *$adrada >+=

 print2!>?n?n?n?t?tRAST *A'RA'A>+=

 print2!>?n?n?t?tValor: >+=

scan2!>Hd># val1+=

8/16/2019 Atps - Programação Estruturada 1

http://slidepdf.com/reader/full/atps-programacao-estruturada-1 10/22

8/16/2019 Atps - Programação Estruturada 1

http://slidepdf.com/reader/full/atps-programacao-estruturada-1 11/22

  U

E'()( "

Relatório – Algor0timos Avançados

Stem: <('/(.

Variável: (1B /B *6B do tipo /,'*/.

D*6/34: A variável / 4 iniciali)ada como valor 1 e recebe-se do $s$ário o

valor a ser calc$lado !(1+. m laço <# com decremento de 1# iniciali)a o se$

contador !/+ com o valor a ser calc$lado# /$e será decrementado a cada iteraç%o. Wa

 primeira iteraç%o a variável (1 ac$m$la se$ valor at$al# /$e 4 1 m$ltiplicado pela

valor da variável /. Was demais iteraçes# (1 ac$m$la o prod$to do se$ valor at$al

com o valor de / decrementado# at4 /$e / seja ig$al a 1.

Stem: E),*,/(34

Variável: (1B (2B /B do tipo /,'*/

  *6D*B do tipo 5*

D*6/34: a variável (1 recebe do $s$ário o valor da base# en/$anto (2

recebe o valor do e(poente. Snicia-se o laço <# com a variável / recebendo o valor 1#

e repetindo# recebendo o acr4ssimo de 1 a cada volta !iDD+ en/$anto / seja menor o$

ig$al Y variável (2. 'entro deste laço# *6D* recebe se$ valor at$al m$ltiplicado

 por (1. Wo 2im do laço# o res$ltado estará arma)enado em *6D*.

Stem: R(/ (5(5(

Variável: /B (1B do tipo /,'*/

  *6F('B '*+)R*6F('B do tipo <('

8/16/2019 Atps - Programação Estruturada 1

http://slidepdf.com/reader/full/atps-programacao-estruturada-1 12/22

D*6/34: (1 recebe o valor do nImero a ser encontrada s$a rai) /$adrada.

*6F('# recebe (1. Snicia-se $m laço aparentemente em Zlooping in2inito[ onde

*6F('  recebera o res$ltado da seg$inte e(press%o: *6F('&2 (1&

2*6F('.

'entro deste laço# $ma condiç%o Z/<[ 2ará o papel de 2inali)a-lo com o comando

*(B nesta etapa entra a variável '*+)R*6F(' /$e receberá o valor /$e determina o

2im do laço. Este valor será /$ando a *6F(' 2or ig$al a '*+)R*6F('# o$ seja# imita

o padr%o resposta de $ma rai)# onde Z$m nImero ve)es ele mesmo seria ig$al ao

nImero do /$al estamos encontrando a rai) /$adrada[.

E'()( !

Relatório O – Aplicativo 6inal

O.1 ódigo 2onte do aplicativo

7incl$de 8stdio.9

7incl$de 8stdlib.9

7incl$de 8conio.9

7incl$de 8iostream

int main!+ ;

 // Declaração das variaveis necessárias para a execução do Aplicativo

c9ar op=

int decFN# dF1=

int val1# val,# res=

2loat res6loat# tempRes6loat F N=

do$ble res'o$ble=

c9ar binario\C]=

8/16/2019 Atps - Programação Estruturada 1

http://slidepdf.com/reader/full/atps-programacao-estruturada-1 13/22

sLstem!>color 1e>+=

sLstem !>title alc$ladora v1.N>+=

do ;

 // Responsável por montar o Quadrado na parte Superior da tela do aplicativo

 print2!>?t?t?(@>+=

2or!int i F 1= i 8 N= iDD+ ;

 print2!>?('>+=

U

 print2!>?(55?n>+=

 print2!>?t?t?(5A ?t?(5A?n>+=

 print2!>?t?t?(5A A33A'BRA ?t?(5A?n>+=

 print2!>?t?t?(5A ?t?(5A?n>+=

 print2!>?t?t?(C>+=

2or!int i F 1= i 8 N= iDD+ ;

 print2!>?('>+=

U

 print2!>?(5?n>+=

<< Apresentaç%o do &en$ de Bperaçes

 print2!>?n?t!D+ - "oma>+=

 print2!>?t?t?t!P+ - Porcentagem>+=

 print2!>?n?t!-+ - "$btracao>+=

 print2!>?t?t?t!6+ - 6atorial>+=

 print2!>?n?t!+ - &$ltiplicacao>+=

 print2!>?t?t!5+ - onversor 5inario 'ecimal>+=

 print2!>?n?t!<+ - 'ivisao>+=

 print2!>?t?t?t!'+ - onversor 'ecimal 5inario>+=

 print2!>?n?t!E+ - E(ponenciacao>+=

 print2!>?t?t!"+ - "air>+=

 print2!>?n?t!R+ - Rai) /$adrada>+=

8/16/2019 Atps - Programação Estruturada 1

http://slidepdf.com/reader/full/atps-programacao-estruturada-1 14/22

 print2!>?n?n?tBpcao:>+=

 // Armazena a tecla digitada pelo Usuário

op F getc9!+=

 // Exibe na tela a ecla digitada pelo Usuário

 print2!>Hc># op+=

 // ran!orma a tecla digitada para caracter mai"sculo para comparação

op F to$pper!op+=

 // Realiza o teste para saber #ual tecla $opção% !oi escol&ida

sJitc9 !op+ ;

< Bperç%o soma disparada# pela processamento do caracter KDK. Recebe os valores do

s$ário# reali)a o calc$lo e apresenta o res$ltado na tela

<

case KDK: sLstem!>title Bperaç%o "oma >+=

 // Altera o titulo da 'anela do Aplicativo

 print2!>?n?n?n?t"B&A>+=

 // (ostra na tela o texo )S*(A) 

 print2!>?n?n?tPrimeiro Valor: >+=

scan2!>Hd># val1+=

 // Armazena o texto digitado pelo Usuário

 print2!>?n?t"eg$ndo Valor: >+=

scan2!>Hd># val,+=

res F val1 D val,=

 // Realiza a soma dos valores

 print2!>?n?n?tHd D Hd F Hd ?n?n># val1# val,# res+=

 breaQ=

 /+ *perção ,atorial- disparada pela processamento do caracter .,.

 Recebe os valores do Usuário- realiza o calculo e apresenta o resultado na tela

<

8/16/2019 Atps - Programação Estruturada 1

http://slidepdf.com/reader/full/atps-programacao-estruturada-1 15/22

case K6K: sLstem!>title Bperaç%o 6atorial >+=

 print2!>?n?n?n?t6AGBRSA3>+=

 print2!>?n?n?tValor: >+=

scan2!>Hd># val1+=

res F 1=

2or!int i F val1= i 1= i--+ ;

res F res i=

 

U

 print2!>?n?n?t6atorial de Hd F Hd ?n?n># val1# res+=

 breaQ=

 /+ *perção Subtração- disparada pela processamento do caracter .0. Recebe os valores

do Usuário- realiza o calculo

e apresenta o resultado na tela

<

case K-K: sLstem!>title Bperaç%o "$btraç%o >+=

 print2!>?n?n?n?t"5GRAAB>+=

 print2!>?n?n?tPrimeiro Valor: >+=

scan2!>Hd># val1+=

 print2!>?n?t"eg$ndo Valor: >+=

scan2!>Hd># val,+=

res F val1 - val,=

 print2!>?n?n?tHd - Hd F Hd ?n?n># val1# val,# res+=

 breaQ=

 /+ *perção (ultiplicação- disparada pela processamento do caracter .+. Recebe os

valores do Usuário- realiza o calculo e apresenta o resultado na tela

<

case KK: sLstem!>title Bperaç%o &$ltiplicaç%o >+=

 print2!>?n?n?n?t&3GSPS3AAB>+=

 print2!>?n?n?tPrimeiro Valor: >+=

scan2!>Hd># val1+=

8/16/2019 Atps - Programação Estruturada 1

http://slidepdf.com/reader/full/atps-programacao-estruturada-1 16/22

 print2!>?n?n?t"eg$ndo Valor: >+=

scan2!>Hd># val,+=

res F val1 val,=

 print2!>?n?n?tHd Hd F Hd ?n?n># val1# val,# res+=

 breaQ=

 /+ *perção Divsão- disparada pela processamento do caracter ./. Recebe os valores do

Usuário- realiza o calculo e apresenta o resultado na tela <

case K<K: sLstem!>title Bperaç%o 'ivis%o >+=

 print2!>?n?n?n?t'SVS"AB>+=

 print2!>?n?n?tPrimeiro Valor: >+=

scan2!>Hd># val1+=

 print2!>?n?t"eg$ndo Valor: >+=

scan2!>Hd># val,+=

i2!val, FF N+;

 print2!>?n?tErro# divisao por Tero^?n?n >+=

U else ;

res6loat F !val1 < val,+=

 print2!>?n?n?tHd dividido por Hd F HN.,2 ?n?n># val1# val,#

res6loat+=

U

 breaQ=

 /+ *perção E-xponenciação disparada pela processamento do caracter .E.

 Recebe os valores do Usuário- realiza o calculo e apresenta o resultado na tela

<

case KEK: sLstem!>title Bperaç%o E(ponenciaç%o >+=

 print2!>?n?n?n?tEPBWEWSAAB>+=

 print2!>?n?n?t5ase: >+=

scan2!>Hd># val1+=

8/16/2019 Atps - Programação Estruturada 1

http://slidepdf.com/reader/full/atps-programacao-estruturada-1 17/22

8/16/2019 Atps - Programação Estruturada 1

http://slidepdf.com/reader/full/atps-programacao-estruturada-1 18/22

8/16/2019 Atps - Programação Estruturada 1

http://slidepdf.com/reader/full/atps-programacao-estruturada-1 19/22

do ;

dec F decD!val1H1N+d=

d F d,=

val1 F val1<1N=

U J9ile!val1^FN+=

 print2!>?n?n?tE/$ivalente em 'ecimal: Hd># dec+=

 breaQ=

 /+ *perção #ue realiza a sa3da do programa- disparada pela processamento do

caracter .S.

<

case K"K: sLstem!>cls>+=

 print2!>?n?n?tPrograma 6inali)ado?n?n>+=

 breaQ=

 /+ *peração inválida- disparada #uando nen&uma das opç4es acima são digitadas +/ 

de2a$lt: print2!>?n?n?tBpcao Snvalida?n?n>+=

 breaQ=

U

 // Espera por um comando a ser digitado para !inaliazar o programa

getc9!+=

sLstem!>cls>+=

U J9ile !op ^F K"K+=

U

8/16/2019 Atps - Programação Estruturada 1

http://slidepdf.com/reader/full/atps-programacao-estruturada-1 20/22

O., Gelas do Aplicativo

  !ig 5

8/16/2019 Atps - Programação Estruturada 1

http://slidepdf.com/reader/full/atps-programacao-estruturada-1 21/22

  !ig 6

  !ig7

8/16/2019 Atps - Programação Estruturada 1

http://slidepdf.com/reader/full/atps-programacao-estruturada-1 22/22

#//=(<(:

Victorine Viviane. Treinamento em Linguagem C . P3G n_ `N. 1 ed. "%o Pa$lo:

 1earson# ,NN`.