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(a
b.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