Buscar

Resoluções Lista 1 - Programação de Computadores - FORTRAN

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 4 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

RESOLUÇÕES – LISTA DE EXERCÍCIOS 1 – V2 – LINGUAGEM FORTRAN 
 
Exercício 1 
PROGRAM OrdemInversa 
 INTEGER:: i 
 DO i=100, 1, -1 
 PRINT*, i 
 END DO 
 PAUSE 
 END PROGRAM 
 
Exercício 2 
PROGRAM CelsiusFahrenheit 
 INTEGER:: F, C 
 DO C=-100, 100, 10 
 F=(((9/5)*C)+32) 
 PRINT*, C 
 PRINT*, F 
 END DO 
 PAUSE 
 END PROGRAM 
 
Exercício 3 
PROGRAM MultiplosSete 
 INTEGER:: i, resto 
 DO i=1, 100, 1 
 resto=MOD(i,7) 
 IF (resto==0)THEN 
 PRINT*, i 
 END IF 
 END DO 
 PAUSE 
 END PROGRAM 
 
Exercício 4 
PROGRAM Calculando_h 
 INTEGER:: N, i 
 REAL:: h 
 PRINT*, "Digite um número inteiro:" 
 READ*, N 
 IF (N .GT. 0) THEN 
 h=1 
 DO i=2, N, 1 
 h=(h+(1.0/i)) 
 END DO 
 END IF 
 PRINT*, h 
 
 PAUSE 
 END PROGRAM 
 
Exercício 5 
PROGRAM Fatorial 
 INTEGER:: N, NFATORIAL, i 
 PRINT*, "Digite um número inteiro:" 
 READ*, N 
 NFATORIAL=1 
 IF (N==0) THEN 
 PRINT*, "N!=", NFATORIAL 
 END IF 
 IF (N>0) THEN 
 DO i=2, N, 1 
 NFATORIAL=(NFATORIAL*i) 
 END DO 
 PRINT*, "N!=", NFATORIAL 
 END IF 
 PAUSE 
 END PROGRAM 
 
Exercício 6 
PROGRAM Moedas 
 INTEGER:: valor, resto, result1, result2, result3, result4, result5 
 PRINT*, "Digite o valor:" 
 READ*, valor 
 DO WHILE (valor>0) 
 result1=(valor/100) 
 PRINT*, "moeda(s) de 1 real: ",result1 
 resto=MOD(valor,100) 
 IF (resto>0) THEN 
 result2=(resto/50) 
 PRINT*, "moeda(s) de 50 centavos: ", result2 
 resto=MOD(resto,50) 
 END IF 
 IF (resto>0) THEN 
 result3=(resto/25) 
 PRINT*, "moeda(s) de 25 centavos: ",result3 
 resto=MOD(resto,25) 
 END IF 
 IF (resto>0) THEN 
 result4=(resto/10) 
 PRINT*, "moeda(s) de 10 centavos: ", result4 
 resto=MOD(resto,10) 
 END IF 
 IF (resto>0) THEN 
 result5=(resto/5) 
 PRINT*, "moeda(s) de 5 centavos: ", result5 
 resto=MOD(resto,5) 
 IF (resto>0) THEN 
 PRINT*, "moeda(s) de 1 centavo: ", resto 
 END IF 
 PAUSE 
 END DO 
 END 
 
Exercício 7 
PROGRAM JoaoMaria 
 INTEGER:: ANO, J, M 
 ANO=0 
 J=150 
 M=110 
 DO WHILE (M<=J) 
 ANO=(ANO+1) 
 J=(J+2) 
 M=(M+3) 
 END DO 
 PRINT*, ANO, "anos para Maria ultrapassar João" 
 PAUSE 
 END PROGRAM 
 
Exercício 8 
PROGRAM SOMATORIO_SETE_NOVE 
 INTEGER:: QNTD, SOMA, QNTDN7, QNTDN9, N, i 
 PRINT*, "DIGITE A QUANTIDADE DE NÚMER0S QUE DESEJA SOMAR" 
 READ*, QNTD 
 SOMA=0 
 QNTDN7=0 
 QNTDN9=0 
 IF (QNTD>=1) THEN 
 DO i=1, QNTD, 1 
 PRINT*, "DIGITE O NÚMERO A SER SOMADO" 
 READ*, N 
 SOMA=(SOMA+N) 
 IF (N>7) THEN 
 QNTDN7=(QNTDN7+1) 
 END IF 
 IF (N>9) THEN 
 QNTDN9=(QNTDN9+1) 
 END IF 
 END DO 
 END IF 
 PRINT*, “O RESULTADO DA SOMA É =”, SOMA 
 PRINT*, QNTDN7, "NÚMERO(S) MAIORES QUE 7" 
 PRINT*, QNTDN9, "NÚMERO(S) MAIORES QUE 9" 
 PAUSE 
 END PROGRAM 
 
Exercício 9 
PROGRAM COMPRA_DESCONTO 
 REAL:: PRECO, VALORPG 
 INTEGER:: QNTD 
 CHARACTER (LEN=20):: NOMEPROD 
 PRINT*, "DIGITE O NOME DO PRODUTO" 
 READ*, NOMEPROD 
 PRINT*, "DIGITE O VALOR DO PRODUTO" 
 READ*, PRECO 
 PRINT*, "DIGITE A QUANTIDADE DO PRODUTO" 
 READ*, QNTD 
 VALORPG=(PRECO*QNTD) 
 PRINT*, NOMEPROD 
 IF ((QNTD .GE. 1) .AND. (QNTD .LE. 10)) THEN 
 PRINT*, "TOTAL=", VALORPG 
 END IF 
 IF ((QNTD .GE. 11) .AND. (QNTD .LE. 20)) THEN 
 VALORPG=(VALORPG-((VALORPG*10)/100)) 
 PRINT*, "TOTAL=", VALORPG 
 END IF 
 IF ((QNTD .GE. 21) .AND. (QNTD.LE. 50)) THEN 
 VALORPG=(VALORPG-((VALORPG*20)/100)) 
 PRINT*, "TOTAL=", VALORPG 
 END IF 
 IF (QNTD .GT. 50) THEN 
 VALORPG=(VALORPG-((VALORPG*25)/100)) 
 PRINT*, "TOTAL=", VALORPG 
 END IF 
 PAUSE 
 END PROGRAM 
 
Exercício 10 
PROGRAM NUMERO_DIGITOS 
 INTEGER:: CONT, N1, N2 
 CONT=1 
 PRINT*, "DIGITE UM NUMERO INTEIRO" 
 READ*, N1 
 N2=(N1/10) 
 DO WHILE (N2/=0) 
 N2=(N2/10) 
 CONT=(CONT+1) 
 END DO 
 PRINT*, N1, "TEM", CONT, "DÍGITOS" 
 PAUSE 
 END

Outros materiais