Exercicios Resolvidos De Programaçãofortran

  • Uploaded by: Majenda Limitedi
  • 0
  • 0
  • October 2019
  • PDF

This document was uploaded by user and they confirmed that they have the permission to share it. If you are author or own the copyright of this book, please report to us by using this DMCA report form. Report DMCA


Overview

Download & View Exercicios Resolvidos De Programaçãofortran as PDF for free.

More details

  • Words: 3,101
  • Pages: 34
EXERCICIOS RESOLVIDOS EM LIGUAGEM F (Pelo estudante: Majenda Uzanani Limitedi)

1. Crie um algoritmo que leia um número informado pelo usuário, em seguida deverá ser calculado se o valor é menor ou igual a 30, caso seja menor ou igual deverá ser apresentado na tela a mensagem: Menor que 30 .

PROGRAM MAIOR_DE_30 ! AUTOR: MAJENDA ! DATA: 30/10/2015 IMPLICIT NONE INTEGER::N PRINT*,"INFORME O NUMERO" READ*,N IF (N<30) THEN PRINT*,"MENOR QUE TRINTA" ELSEIF (N>30) THEN PRINT*,"MAIOR QUE TRINTA" ELSE PRINT*,"IGUAL A TRINTA" END IF END PROGRAM MAIOR_DE_30

[email protected]

848659214

862228553

2. Crie um algoritmo que recebe quatro notas e calcule a média do aluno, em seguida apresente uma mensagem de :Aprovado, caso a média seja maior ou igual a 7.

PROGRAM MEDIA ! AUTOR: MAJENDA ! DATA: 30/10/2015

IMPLICIT NONE REAL::M,S,N INTEGER::C PRINT*,"ESTE PROGRAMA EH PARA CALCULAR A MEDIA DE QUATRO (4) NOTAS" S=0 ; C=0 DO ; C=C+1 IF(C>4)EXIT PRINT*,"INFORME A NOTA",C ; READ*,N S=S+N ; M=S/4 END DO IF(M>=7)THEN PRINT*,"APROVADO MEDIA",M ELSE PRINT*,"REPROVADO MEDIA",M ENDIF END PROGRAM MEDIA

4a. Crie um algoritmo que peça a idade do eleitor e o mesmo informe se o eleitor é facultativo (entre 16 e 17 anos) ou obrigatório (entre 18 a 65) ou dispensado (acima de 65). Use ( if...then ) [email protected]

848659214

862228553

PROGRAM ELEICAO ! AUTOR: MAJENDA ! DATA: 30/10/2015 IMPLICIT NONE INTEGER::IDADE PRINT*,"DIGITE A IDADE DO ELETOR" READ*,IDADE IF(IDADE==16 .OR. IDADE==17)THEN PRINT*,"FACULTATIVO" ELSEIF(IDADE>=18 .AND. IDADE<=65)THEN PRINT*,"OBRIGATORIO" ELSE PRINT*,"DISPENSADO" END IF END PROGRAM ELEICAO

4b. Crie um algoritmo que peça a idade do eleitor e o mesmo informe se o eleitor é facultativo (entre 16 e 17 anos) ou obrigatório (entre 18 a 65) ou dispensado (acima de 65). Use (select case)

PROGRAM ELEICAO ! AUTOR: MAJENDA

[email protected]

848659214

862228553

! DATA: 30/10/2015 IMPLICIT NONE INTEGER::IDADE PRINT*,"DIGITE A IDADE DO ELETOR" ; READ*,IDADE SELECT CASE (IDADE) CASE (16,17) ; PRINT*,"FACULTATIVO" CASE (18:65) ; PRINT*,"OBRIGATORIO" CASE DEFAULT ; PRINT*,"DISPENSADO" END SELECT END PROGRAM ELEICAO

5. Crie um algoritmo que exiba o nome do mês do ano ao seleccionar entre os números 1 até 12.

program MES ! AUTOR: MAJENDA ! DATA: 30/10/2015 implicit none integer::op print*,"INFORME O NUMERO NO INTERVALO DE 1 A 12" READ*,OP SELECT CASE (OP) CASE (1); PRINT*,"JANEIRO"

[email protected]

848659214

862228553

CASE (2); PRINT*,"FEVEREIRO" CASE (3); PRINT*,"MARCO" CASE (4); PRINT*,"ABRIL" CASE (5); PRINT*,"MAIO" CASE (6); PRINT*,"JUNHO" CASE (7); PRINT*,"JULHO" CASE (8); PRINT*,"AGOSTO" CASE (9); PRINT*,"SETEMBRO" CASE (10); PRINT*,"OUTUBRO" CASE (11); PRINT*,"NOVEMBRO" CASE (12); PRINT*,"DESEMBRO" CASE DEFAULT; PRINT*,"OPCAO INVALIDA" END SELECT END program MES

6. Crie um algoritmo que exiba um cardápio com as opções: 1: Xima, 2: Mandioca e 3: Batata doce . Ao seleccionar uma das opções: 1, 2 e 3 deverá exibir a mensagem: Opção (número) : (nome do prato), pedido realizado com sucesso.

PROGRAM CARDAPIO ! AUTOR: MAJENDA ! DATA: 30/10/2015 IMPLICIT NONE

[email protected]

848659214

862228553

INTEGER::PRATO PRINT*,"ESCOLHA O TEO PRATO FAVORITO" PRINT*,"1: Xima

2: Mandioca

3: Batata doce"

READ*,PRATO SELECT CASE (PRATO) CASE (1); PRINT*,"OPCAO 1: Xima, PEDIDO REALIZADO COM SUCESSO." CASE (2); PRINT*,"OPCAO 2: Mandioca, PEDIDO REALIZADO COM SUCESSO." CASE (3); PRINT*,"OPCAO 3: Batata doce, PEDIDO REALIZADO COM SUCESSO." CASE DEFAULT; PRINT*,"OPCAO INVALIDA" END SELECT END PROGRAM CARDAPIO

7. Construa um algoritmo que: a. Leia o nome de três pessoas (dado do tipo caractere). b. Escreva os nomes na ordem inversa da que foram informados.

program inversa implicit none !Autor: Majenda !Data: 30/10/2015 character(20)::a,b,c print*,'Digite o primeiro nome'; read*,a print*,'Digite o segundo nome'; read*,b

[email protected]

848659214

862228553

print*,'Digite o terceiro nome'; read*,c print*,'--------------------------------------' print*,'A ordem inversa eh' print*,c print*,b print*,a end program inversa

8. Os funcionários da empresa 'Dois Irmãos' receberão um reajuste de salário. Construa um algoritmo que: a. Leia o nome de um funcionário (dado do tipo caractere). b. Leia o valor atual de seu salário (dado do tipo real). c. Leia o percentual de reajuste (assuma que as entradas serão valores reais entre 0 e 100). d. Calcule o novo salário. e. Exiba o nome do funcionário e o novo valor do salário.

PROGRAM PERCENTAGEM ! AUTOR: MAJENDA ! DATA: 30/10/2015 IMPLICIT NONE real::b,c,d CHARACTER(10)::A PRINT*,"Introduza o valor actual"; READ*,A PRINT*,"Introduza o valor actual de ",A ; READ*,b PRINT*,"Introduza a percentual de reajuste"; READ*,c IF(c>=0 .AND. c<=100)THEN

[email protected]

848659214

862228553

c = b * (c / 100) !calculo de percentagem d = c + b ! novo salario PRINT*,a," Seu novo salario e: ",d ELSE PRINT*,"A percentual de reajuste so pode ser no intervalo de 0% a 100%, tente novamente." ENDIF END PROGRAM PERCENTAGEM

10 Construa um algoritmo que: a. Leia um número inteiro. b.informe se o número lido é positivo, negativo ou igual a zero. Teste o algoritmo as entradas -16, 0 e 4. Mantenha anotado o valor de cada variável durante os passos da execução.

program posit_negat ! AUTOR: MAJENDA ! DATA: 30/10/2015 implicit none integer::n print*,'Digite o numero' read*,n if (n<0) then; print*,n,' eh negativo' elseif(n>0)then; print*,n,' eh negativo' else; print*,n,' eh nulo'; endif end program posit_negat

[email protected]

848659214

862228553

11. Construa um algoritmo que determine e mostre o maior número entre vários fornecidos pelo usuário. A condição de parada é a entrada de um valor 0 (zero), ou seja, o algoritmo deve ficar escolhendo o maior até que a entrada seja igual a 0 (zero). Utilize a estrutura ENQUANTO ... REPETIR ... no algoritmo. Assuma que valores negativos nunca serão informados pelo usuário.

PROGRAM MAIOR_MENOR ! AUTOR: MAJENDA ! DATA: 30/10/2015 IMPLICIT NONE INTEGER::num,Maior,menor maior = 0; menor = 9999; NUM = 1 Do while (NUM/=0) PRINT*,"digite o numero" READ*,num IF (num > 0 .and. num > maior) THEN; maior = num; ENDIF IF (num < menor .and. num>0) THEN; menor = num; ENDIF ENDDO PRINT*,"Menor e ",menor PRINT*,"Maior e ",maior END PROGRAM MAIOR_MENOR

[email protected]

848659214

862228553

12. Construa um algoritmo que leia 500 valores inteiros e positivos e: a. Encontre e mostre o maior valor. b. Encontre e mostre o menor valor. c. Calcule e mostre a média dos números lidos. Utilize a estrutura ENQUANTO ... REPETIR ... no algoritmo.

PROGRAM MEDIA_DE_500 ! AUTOR: MAJENDA ! DATA: 30/10/2015 IMPLICIT NONE INTEGER::i,nma,nme,soma real::media; nme = 99999; nma = 0; soma=0 i=0 Do while ( I<500 ) ; i=i+1 PRINT*,I IF(i > nma) THEN; nma = I; ENDIF IF (i < nme) THEN; nme = I; ENDIF soma=soma+i; media=soma/500 ENDDO PRINT*,"O numero maior e: ",nma PRINT*,"O numero menor e: ",nme PRINT*,"A soma e: ",soma PRINT*,"A media e: ",media END PROGRAM MEDIA_DE_500

[email protected]

848659214

862228553

13. Reescreva o algoritmo desenvolvido no Exercício 12 utilizando a estrutura de repetição REPETIR ... ENQUANTO ... no lugar de ENQUANTO ... REPETIR ...

PROGRAM MEDIA_DE_500 ! AUTOR: MAJENDA ! DATA: 30/10/2015 IMPLICIT NONE INTEGER::i,nma,nme,soma real::media nme = 99999 nma = 0 soma=0 i=0 DO; I=i+1; if(i>500)exit PRINT*,I IF(i > nma) THEN nma = i ENDIF IF (i < nme) THEN nme = i ENDIF

[email protected]

848659214

862228553

soma=soma+i media=soma/500 ENDDO PRINT*,"O numero maior e: ",nma PRINT*,"O numero menor e: ",nme PRINT*,"A soma e: ",soma PRINT*,"A media e: ",media END PROGRAM MEDIA_DE_500

14. Utilizando a estrutura PARA... ATÉ... REPETIR..., construa um algoritmo que exiba os números ímpares entre 100 e 200. Dica: a função mod(X,Y) retorna o resto da divisão de X por Y.

program impar implicit none !AUTOR: MAJENDA !DATA: 07/11/2015 integer::i do i=100,200

! i eh contador; 100 eh o valor iniciar da contagem; 200 eh o valor limite da contagem ! mesma funcao com (para...faca...) Ex: para i de 100 ate 200 faca

[email protected]

848659214

862228553

if(mod(i,2)/=0)then !funcao mod(i,2) retorna o resto da divisao de i por 2 print*,i ! impessao de numeros impares, e imprime se o resto da divisao for diferrente de zero endif enddo end program impar

15. Construa um algoritmo que calcule a média de N números reais informados pelo usuário, onde o valor de N também é informado no início da execução. Utilize a estrutura PARA...ATÉ... REPETIR...

Antes do término da execução do algoritmo, mostre a média

calculada.

program media_de_n_numeros ! AUTOR: MAJENDA ! DATA: 30/10/2015 implicit none integer::n,i real::media,soma,nota print*,"Informe a quantidade" ! pede para o usuario digitar a quantidade de numeros read*,n i=0 ! contador soma=0 do; i=i+1; if(i>n)exit ! se o contador (i) for maior que a quantidade (n), sai do laço print*,"Digite o numero",i

[email protected]

848659214

862228553

read*,nota soma=soma+nota media=soma/n ! Media eh a soma de todos numeros dividir por quantidade end do print*,"A soma e:",soma

! Mostra o resultado da soma na tela

print*,"A media e:",media ! Mostra a media na tela end program media_de_n_numeros

16. Tendo como dados de entrada a altura e o sexo de uma pessoa, construa um algoritmo (pseudocódigo ) que calcule seu peso ideal, utilizando as seguintes fórmulas: Para homens: (72,7 * altura) – 58. Para mulheres: (62,1 * altura) – 44,7 Ao perguntar o sexo, o algoritmo deverá garantir que as únicas entradas aceitas sejam „M‟ para homens e „F‟ para mulheres. Ou seja, caso um valor diferente de „M‟ ou „F‟ seja informado, o programa deverá requisitar ao usuário que informe o sexo novamente até a entrada ser válida. Dica: utilize a estrutura de repetição mais adequada dentre as três vistas em aula.

program peso_ideal !Autor: Majenda !Data: 07/11/2015 implicit none real::altura,peso character(15)::gen,nome write(*,*)"Informe teu nome" read(*,*)nome

[email protected]

848659214

862228553

write(*,*)"Informe tua altura" read(*,*)altura do while (gen /= "m" .and. Gen /= "f") write(*,*)"Informe teu genero. Sugestao: so eh permitido a entrada de M ou F" read(*,*)gen select case (gen) case ("m") peso = (72.7 * altura) - 58 ! para homem write(*,*)"Senhor ",nome,"teu peso eh: ",peso case ("f") peso =(72.1 * altura) - 44.7 ! para mulher write(*,*)"Senhora ",nome," teu peso eh: ",peso end select end do end program peso_ideal

17. Escreva um algoritmo que leia três valores inteiros e mostre-os em ordem decrescente. Dica: utilize estruturas de decisão encadeadas.

program ordem_decrescente implicit none ! AUTOR: MAJENDA ! DATA: 30/10/2015

[email protected]

848659214

862228553

integer::a,b,c print*,"Informe tres valores inteiros:" read*,a,b,c if(a==b.and.b==c) then print*,a,b,c elseif(ab.and.b>c)then print*,a,b,c elseif (ab.and.b==c)then print*,a,b,c elseif (a==b.and.bc)then print*,a,b,c elseif (a==c.and.b>c)then print*,b,a,c elseif (a==c.and.bc.and.c>a) then

[email protected]

848659214

862228553

print*,b,c,a elseif (a>b.and.bb.and.ba) then print*,c,a,b elseif(ac.and.c
18. Construa um algoritmo que escreva uma contagem de 10 (dez) minutos, ou seja, mostre 0:00, e então 0:01, 0:02, ..., 0:58, 0:59, 1:00, 1:01, 1:02,...,até 10:00. Dica: utilize a estrutura de repetição mais adequada dentre as três vistas em aula.

program cronometro ! Autor: MAJENDA ! Data: 02/11/2015 implicit none integer::hora,minuto,segundo hora = 0 minuto = 0 segundo = 0 !do while( hora < 25) !! conta até 24:00 do while( minuto < 10)

[email protected]

848659214

862228553

segundo = segundo + 1 ! contador de segundos if (segundo rel="nofollow"> 59) then ! controlador de segundos segundo = 0 !------------------------------minuto = minuto + 1 if (minuto > 59) then minuto = 0 !------------------------------hora = hora + 1 if (hora > 23) then hora = 0 !zero hora = a 24 horas endif endif endif print*,hora,"h:",minuto,"m:",segundo,"s" enddo end program cronometro

19. Construa três algoritmos que imprimam a tabuada do 5 (cinco). Em cada um deles utilize uma das estruturas de repetição vistas em aula. Dica: verifique se o resultado está correcto fazendo um teste de mesa para cada uma das soluções apresentadas. 19a. Usando (do), mesma funçao com (para...ate...faca) program tab_Do

[email protected]

848659214

862228553

implicit none integer::i do i=1,5 print*,5,"

X",i,"

=",i*5

enddo end program tab_Do 19b. Usando (do while...), mesma funçao com (enquanto...faca...) program tab_Do_While implicit none integer::i i=0 do while (i<5) ; i=i+1 print*,5,"

X",i,"

=",i*5

enddo end program tab_Do_While 19c. Usando (do…exit), mesma funçao com (repita…ate…) program tab_Do_Exit implicit none integer::i i=0 do; i=i+1 ; if (i>5)exit print*,5,"

X",i,"

[email protected]

=",i*5

848659214

862228553

end do end program tab_ Do_Exit

20. Escreva um algoritmo que leia 20 valores inteiros e ao final exiba: a) a soma dos números positivos; b) a quantidade de valores negativos

program somaposi ! AUTOR: MAJENDA ! DATA: 30/10/2015 implicit none real::soma,negativo integer::n,i print*,"Digite informe 20 valores inteiros" i=0; negativo=0; soma=0 do; i=i+1; read*,n if (n>=0) then ! se o numero digitado for maior ou igual a zero, o numero vai ser somado soma=soma+n else ! se o numero nao for maior ou igual a zero, soma (negativo + 1) negativo=negativo+1 end if if(i==20)exit end do print*,"A soma dos numeros positivos e:",soma

[email protected]

848659214

862228553

Print*,"A quantidade de numeros negativos e:",negativo end program somaposi

21. Faça um algoritmo que escreva na tela os números de um número inicial a um número final. Os números inicial e final devem ser informados pelo usuário;

program inicial_final ! AUTOR: MAJENDA ! DATA: 30/10/2015 implicit none integer::i,f,p,c print*,"Digite o numero inicial" read*,i print*,"Digite o numero final" read*,f print*,"Digite o passo" read*,p do c = i,f,p; print*,c; end do end program inicial_final

22. Escrever um algoritmo que imprima a tabuada de um número informado pelo usuário;

PROGRAM TABUADA

[email protected]

848659214

862228553

! AUTOR: MAJENDA ! DATA: 30/10/2015 implicit none INTEGER::N,I,L

PRINT*,"DIGITE O NUMERO NA QUAL DESEJA VER A SUA TABUADA" READ*,N PRINT*,"ATE QUE NUMERO DESEJA VER A TABUADA DE",N READ*,L I=0 DO; I=I+1; IF (I>L)EXIT PRINT*,N,"

X",I,"

=",N*I

END DO END PROGRAM TABUADA 23. Escrever um algoritmo que gera e escreve os números ímpares entre 100 e 200;

PROGRAM IMPARES_100_a_200 ! AUTOR: MAJENDA ! DATA: 30/10/2015

implicit none INTEGER::I

[email protected]

848659214

862228553

DO I=100,200 IF (MOD(I,2)/=0)THEN PRINT*,I ENDIF END DO END PROGRAM IMPARES_100_a_200

24. Em uma turma há 10 alunos. Cada aluno tem 2 notas. Um professor precisa calcular a média das duas notas de cada aluno. Crie um programa que resolve este problema.

program Exer_24 ! AUTOR: MAJENDA ! DATA: 31/10/2015 implicit none real::n1,n2,media character(20)::nome integer::i i=1 do while (i < 11) print*,"Informe o nome do ",i,"o estudante " read*,nome print*,"Informe a primeira nota do ",nome read*,n1

[email protected]

848659214

862228553

print*,"Informe a segunda nota do ",nome read*,n2 media = (n1+n2)/2 print*,"A media do aluno ",nome," e: ",media i=i+1 end do end program Exer_24

25. Escrever um programa de computador que leia 10 números inteiros e, ao final, apresente a soma de todos os números lidos

PROGRAM SOMA_10 implicit none !Autor: Majnda !Data: 07/11/2015 real::n,s integer::i s=0 do i=1,10 print*,"Digite o",i,"o numero" read*,n s=s+n end do

[email protected]

848659214

862228553

print*,'A soma sera:',s end program soma_10

26. Faça um programa que deve ler e somando números até que o valor digitado seja zero (0 ).

PROGRAM Exer_26 ! AUTOR: MAJENDA ! DATA: 31/10/2015 implicit none integer::soma,n1,n2 PRINT*,"Introduza o 1o numero" READ*,n1 soma=n1 PRINT*,"Digite o numero a somar" READ*,n2 soma=soma+n2 IF (n2 == 0) THEN; PRINT*,"A soma e: ",soma ENDIF DO WHILE (n2 /= 0) PRINT*,"Digite o numero a somar" READ*,n2 soma=soma+n2

[email protected]

848659214

862228553

IF (n2 == 0) THEN; PRINT*,"A soma e: ",soma ENDIF ENDDO END PROGRAM Exer_26

27. Escreva um algoritmo que calcule a média dos números digitados pelo usuário, se eles forem pares. Termine a leitura se o usuário digitar zero (0).

PROGRAM MEDIA_PARES ! AUTOR: MAJENDA ! DATA: 1/11/2015 implicit none REAL::SOMA,MEDIA INTEGER::C,N C=0 SOMA = 0 N=1 DO WHILE (N/=0)

PRINT*,"DIGITE O NUMERO" READ*,N IF(MOD(N,2)==0)THEN C=C+1

[email protected]

848659214

862228553

IF(N==0)THEN C=C-1 ! QUANDO N=0 TIRAMOS 1 PORQUE ZERO VAI SER CALCULADO COMO UM NUMERO PAR ENDIF SOMA=SOMA+N MEDIA=SOMA/C ENDIF END DO PRINT*,"A SOMA DOS NUMEROS PARES E:",SOMA PRINT*,"A MEDIA DOS NUMEROS PARES E:",MEDIA END PROGRAM MEDIA_PARES

28. Escreva um algoritmo que leia valores inteiros e encontre o maior e o menor deles. Termine a leitura se o usuário digitar zero (0)

PROGRAM Exer_28_Maior_d_varios ! AUTOR: MAJENDA ! DATA: 1/11/2015 implicit none INTEGER::nrs,nma,nme

nme=999 ! numero menor recebe numero maior nma=0 ! numero maior recebe numero menor

[email protected]

848659214

862228553

nrs=1 ! numeros recebe o valor inicial diferente de zero

DO WHILE (nrs /= 0) PRINT*,"Informe o numero " READ*,nrs IF (nrs > nma) THEN nma = nrs ENDIF IF (nrs < nme .AND. nrs /= 0) THEN nme = nrs ENDIF ENDDO PRINT*,"O numero maior é: ",nma PRINT*,"O numero menor é: ",nme END PROGRAM Exer_28_Maior_d_varios

29. Escreva uma programa que lê o sexo de uma pessoa. O sexo deverá ser com o tipo de dado caractere e o programa deverá aceitar apenas os valores “M” ou “F”.

PROGRAM SEXO implicit none !Autor: Majenda !Data: 07/11/2015

[email protected]

848659214

862228553

character::s do while (s/="m".and.s/="f") write(*,*)"Digite o teu sexo, so eh permitido a entrada de m ou f" read(*,*)s select case (s) case("m"); print*,'MSCULINO' case("f"); print*,'FEMININO' END SELECT END DO END PROGRAM SEXO

30. Escreva um programa que leia dois valores reais. Ambos valores deverão ser lidos até que o usuário digite um número no intervalo de 1 a 100. Apresentar a soma dos dois valores lidos.

program soma implicit none !Autor: Majenda !Data: 07/11/2015 real::a,b,s,n print*,'digite um numero a sua escolha no intervalo de 1 a 100' read*,n if(n>0.and.n<=100)then print*,'Digite dois numeros para somar'

[email protected]

848659214

862228553

read*,a,b S=A+B print*,a," +",b," =",S end if end program soma

31.Escreva um programa que lido um número, calcule e informe o seu fatorial. Ex.: 5! = 5 * 4 * 3 * 2 * 1 = 120.

program fatorial ! AUTOR: MAJENDA ! DATA: 1/11/2015 Implicit none integer :: n, r, i

print *,"Introduza um numero: " read *,n r=1 do i=n,1,-1 r=r*i end do print *,"O factorial e: ",r end program fatorial

[email protected]

848659214

862228553

33. Faça um algoritmo para calcular a soma de todos os números primos existentes entre 1 e 100.

PROGRAM soma_primo ! AUTOR: MAJENDA ! DATA: 1/11/2015 IMPLICIT NONE INTEGER::re,divi,primo,S,resto PRINT*,"Os numeros primos de 1 ate 100 sao" PRINT*,"

2"

Primo=3 S=0 DO divi = 2 re = 9 DO WHILE (primo /= divi) resto= mod(primo,divi) divi=divi+1 IF (resto==0)THEN re=0 ENDIF ENDDO

[email protected]

848659214

862228553

IF (re==9)THEN PRINT*,Primo s=s+primo ENDIF Primo=primo+1 IF(PRIMO>100)EXIT END DO PRINT*,"A soma eh", s+2 END PROGRAM SOMA_PRIMO

34. Faça o mesmo que em 2, mas usando apenas somas; Informe se um número digitado é primo. Caso não for, informe por quais números ele é divisível

PROGRAM PRIMO !AUTOR: MAJENDA !DATA: 07/11/2015 IMPLICIT NONE INTEGER::I,DIVI,D,N N=1 DO WHILE(N/=0) ! O programa vai mostrando se o numero digitado é primo ou não até que a entrada seja zero PRINT*,'DIGITE O NUMERO INTEIRO POSITIVO, DIGITE (0) PARA TERMINAR' READ*,N DIVI=0

[email protected]

848659214

862228553

DO I=1,N IF(MOD(N,I)==0)THEN DIVI=DIVI+1 D=I PRINT*,N,' EH DIVISIVEL POR',D END IF END DO IF (DIVI==2)THEN PRINT*,N,' EH PRIMO' ELSE PRINT*,N,' NAO EH PRIMO' ENDIF END PROGRAM PRIMO

35. Digitados dois números (base e expoente b), calcule o resultado utilizando apenas multiplicações.

PROGRAM Expoente ! AUTOR: MAJENDA ! DATA: 1/11/2015 IMPLICIT NONE real::a,res INTEGER::i,b

[email protected]

848659214

862228553

PRINT*,"Digite a base" READ*,a PRINT*,"Digite expoente" READ*,b RES=1 DO i = 1,b res = res * a ENDDO PRINT*,a," com expoente ",b," e igual a = ",res END PROGRAM Expoente

[email protected]

848659214

862228553

Related Documents


More Documents from ""

October 2019 6
October 2019 8
October 2019 10
October 2019 12