introdução à programação de computadores em java

99
José Valente de Oliveira e Fernando Lobo Introdução à Programação de Computadores em Java

Upload: jose-valente-de-oliveira

Post on 20-Mar-2016

227 views

Category:

Documents


8 download

DESCRIPTION

Sebenta de Introdução à Programação de Computadores usando Java.

TRANSCRIPT

Page 1: Introdução à Programação de Computadores em Java

José Valente de Oliveira e Fernando Lobo

Introdução à Programação de Computadores em Java

Page 2: Introdução à Programação de Computadores em Java

�� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �

José Valente de Oliveira e Fernando Lobo The Ualg Informatics Lab Universidade do Algarve

Page 3: Introdução à Programação de Computadores em Java

Índice � � � � � � � �

.......................................................................................4

CONCEITOS FUNDAMENTAIS ............................. ..............................5 � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �

� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �

! � � � � � � � � � � � � � " � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � # #

ASPECTOS DA CRIAÇÃO DE UM PROGRAMA................. .............13$ % � � � & � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � # �

CODIFICAÇÃO DE INFORMAÇÃO .......................... .........................25' � � � � � � � � � � � ( � � � � � � � ) * � � � + * , � � � + - � � � * , � � � + � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � . /

0 1 � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � . 2

! � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � . �3 � � � � � � " � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � .

� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 4 5

0 � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 4 #

$ % � � � & � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 4 .

PRIMEIROS PROGRAMAS ................................ ...............................33$ % � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 4 6

! � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 4 /

7 � � � � � � � � � " � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 4 2

8 � � � � � � � � � � � � � � � . � 1 � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 4 �9 : ; < = > ? @ A B C B ; D B E D ? F ? G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G H I

$ % � � � & � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 6 5

8 � � � � � � � � � � � � � � � � � * � � � � � � � � � � � � � � � � � � J � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 6 5

$ % � � � � K � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 6 4

$ % � � � & � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 6 2

Page 4: Introdução à Programação de Computadores em Java

ESTRUTURAS DE CONTROLO DE FLUXO .................... .................48� � � � � � � � � � � � � � � � � � � � � � � � � �

if� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 6

� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � " �if else

� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � / #

$ % � � � & � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � / 4

� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � / 6

� � � � � � � � � � � � � � � � � � � � � 1 � � � � � switch

� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � / /

$ % � � � & � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � / �

� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � / � = � � � D � @ A B

whileG G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G

� = � � � D � @ A Bfor

G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G �� = � � � D � @ A B C B �

whileG G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G I

� � � D � @ � � � C � � ? < � B = � > B � C = > = B � ? < G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G �

� � � � � � � � � � ( � � � � � � � � � $ � 0 � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � .

MODULARIDADE DE FUNÇÕES ............................ ..........................74� � ( � � � � � � ( � � � K � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �

� ? D � F � � D B � � � = ; B C � D � � B D � B G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G I �

0 � � � � � � " � � � � " � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 5

0 � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � .

8 � � � � � � � � � ( � � � � � � � � � � � � � � � � � � � ( � � � K � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � .

$ % � � � & � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 4

8 � � � � � � � � � � � K � � � � � � � � � � � " � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 4� � � � � � K � � � � � � � � � � � " � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � /

� � � = � = @ A B � = � � � > � = > ? C � = � � � D � @ � � � G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G � � B � > � = � B C � ? � � � ; ? � � ? C B G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G � B � ! � � � B � = � C � � = " B � G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G � I

$ % � � � & � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �

TABELAS............................................ ...............................................89� � � � � � � � � � + � � ( � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � * � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 5

0 � � � � � � � � ( � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 4

7 � * � � � � � � � � � � � � � � � � � � � ( � � � K � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 6

$ % � � � & � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �

Page 5: Introdução à Programação de Computadores em Java

Preâmbulo � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ! � � � � " � � � # � � � � � � � � � � � � � � �� � � � � $ � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � % & & ' ( % & & ) *

+ � � � � � " $ � � � # � � � � � � � � � � � � � � � � , � � � � � � � � - ( ( . / * � � � *� � ( 0 1 � � ( � � � "� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � $ � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 2� � � � - ( ( . . . *� � � * � � � * � � � *� � ( � � 3 � � � # � ( 4 "� � � � � � � � � � � � � � � � � � � � 5 � � � � � � � � � � � � � � � � � � � � � " � � � � � � � � � � � � � � � � �� � � � � � � � � � � 6 � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 7 � � � � � � *

Page 6: Introdução à Programação de Computadores em Java

Conceitos fundamentais � � � � � � � � � � � � � � � � � � � � � � � � � � � � �� � � � � � � � � � � � � � � � � � � � � � �� � � � � � � � � � � � � � �� � �� � � � �� � � � � � � � � � � � � � � � � � � � �� � � � � � � � � � � � � � � �� � � � � � � � �

� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � *� � # � � � � � � � � � � � � � � � � � � � � � � � � � � � � $ � � � � � � � � � � � � � � � � � � � � � # � � � � � � � � � � � � � � � � � � � � � � � � � � � � $ � � �

� � � � � � *

� � � � ! " # $ � � % & ' # � ( 2) * + , - . * ) / 0 4 - � � � � � � � � � � � � � � � � � � � � � � �� � � � � � � � � � � � � � � � � � � � � � � � � � # � � � � � � � � � � � � � � � � � � � � � � � � � � � � �� � � � � � � *

1 2 3 4 5 6 7 8 2 9 : ; 4 : ; ; 2 7 < ; 8 : ; : = 9 : 6 > 9 < 7 ? @ A B C D E F G E H F I D A J B K L M N O P Q OR S N O N T U V W X V YZ [ \ ] ^ _ ` a b ^ c Z d e [ \ ] f g V h U U M i j U T g R U O j k M N T U l m k g M g O U V n N V N o NT g N k o N V p

q r s tu v wx

I

D

Page 7: Introdução à Programação de Computadores em Java

� � � � � � � � � � � � � � � � � � � � � �� � � � � � � � � � � � � � � � � � ! " ! # $ " % & # ' ! & & $ � $ ( ) ! * # $ &! � & � � + � # ! , � " $ & , $ & $ " $ # - " ' ! . � ! & & / � � ! ' & + $ 0 � $ * � & $ ( $ 1 $ & 2

� � � � � � � � � � � 3 � 4 � � 5 6 7 8 9 6 � � : � 4 7 ; � � 4 8 � � � � � : � � < � = / � ! ' * , ! � ! ' &+ $ 0 � $ * � & > ! ? $ � * ! + ! ( � ! , ! � / � 2

@ ! & � 0 � $ A � � � � + � # ! , � " B C � � ! D " ! & $ . ! " $ & + � & # ! + � , $ & $ " � � � ! � - 0 � ' * !+ " � E " ! � - 1 $ ( . , $ ! + ( ' ! F / � E $ * A " ' ! 2

G � � ! * , � , $ � � ! # $ ( $ 1 ' & / � # ! � ? A � A + " � E " ! � - 1 $ ( H G 0 � $ A 0 � $ , ' & # ' * E � $$ * # / � � � � � + � # ! , � " , $ � � ! # $ ( $ 1 ' & / � B

Page 8: Introdução à Programação de Computadores em Java

� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �� � � � � � � � � � ! � � � � � " # $ % & # $ ' ( ) � � * � � � � � � � � � � �� � � � * � � � � � � � * � � � + � � � � � � � � * , � * � � � � � � � � � - � � � � � � � � � � � ) � � � � � . � �� � � � � � � � * � � � * � + � � � � � � � + � � � / � � � � � / � � � * � � � � � � � � � � 0 ( � � � � � � � � � � � � �� � � � � � � * � / � � � � * , � * � � � � � � + � * � � � � � � � � � � � � � � . � � * � ( � 1 � � � � 2

� � * � � � � � � � * � � � + � � � � � � � � � � � � * � * � � � � � � � * � � � � � 3 � � � � � � � � � � � � � � � � � - � � � 24 � � � � � � � � � � � ) � � � � � � * � * � � . � � � � * � � � + � � � * � � � � � 5 0 � / � 2 � 2 6 � � � � � � * � � � 6 27 � � � � � + � � * � � . � � � � � � - � � � � � � � � � � � � � � � � � * � � � * � � � � � 5 0 � 2 8 9 � � � � �� � � � * � � � + � � * � � � � � � � � � � � � � � � � - � � � 2 � � � � - � � � � � � � � � � � � : � � � � �; � < => # ? % @ A B C ' D D E ' A @ $F � ; 4 < = > ' # % G ? HF E ' A @ $F ( � � � � � - � � � � � � � � � � � � � � � � ( 2 �� � � - � � � ; � < ) � � � � � � � + � � � � � � � � � � � � � � � � � � � � * � � � * � � � � � � � � : � � � � �� � � � � 2 I � � � � � � � + � J � � � � � � � � � � � � � � / � � � * � � K � � � � � � � - � � � ; � <� � � � � � � � � � 2 � � � � * � � : � � � � � � � � - � � � ; � < / � � * � � � � � 5 0 � � � � � � * � � � * �� � � - � � � � � � � � � � � � � � � * � � � � � � � � . � � * � � � � � + � J � � � � � � � � � � � � � � � 2 L � � � � � �� � 0 � / � � � � - � � � ; � < � � M � � � � + : � � + 2

4 � � � � � � � � � � � � � � � � � � � � * � � � + � � � � � � � � � � � � � � � � � � * � � � � � 5 0 � / � * � + � � * � � 3

− * K � � � � �

− � � 9 � � � � 9 3 * � � � � � � � � � � � � � / � � � � � � � (

− � � � J � * � � � 9 3 � � � � * ! � � / J � : � � � � � / � � � � J � � � � � � (

− � � � � � � � � 9 3 � � � � � � � � � � � � � � � � * � � � � + � � � � � N � � � O � � � (

− � � �

P Q R Q S T U V W V X Y T Z Q [ V R X Q \ ] Y T ^ U Q ] \ _ V R X Q ` a V b \ U W U c c d R ] V S T U \ e c ^ f U[ ] g Q X V c U h Q W Z Q X U \ Z U Q S T ] ^ V S T U U ^ U [ U i U _ Q j U R k l c Q X V c Y Q R Q ] c c V T X W V \ m T \ Z V[ U n o p q r s t u v p k w c c U W V \ m T \ Z V [ U ] \ c Z R T ` x U c b T X Q U c Y b W ] U [ U y R U W U ] Z Q [ UW V j ] \ f Q y S T U Y V [ U c U R Q R X Q j U \ Q [ V \ Q X U X e R ] Q [ V W V X Y T Z Q [ V R k z U c Z Q{ R U W U ] Z Q | W f Q X Q R U X V c } r ~ � r � � � k � U Y V ] c [ U Q R X Q j U \ Q [ V � V Y R V g R Q X Q Y V [ U c U RU h U W T Z Q [ V k � c c V [ U c U \ W Q [ U ] Q Q c c U g T ] \ Z U c Q W ` x U c �

� 2

I � � � * , � * � � � � � * � � � � � 5 0 � � � � � � � � / � ! � � � � � � � � � ~ p � vv o q r � � � � 0 � � * � � � � � � � � � * � � � � � � � � � � � � � � � � 9 � � � + � / � � � � � ) �� � � � � + � � � � � � � � � (

Page 9: Introdução à Programação de Computadores em Java

� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �

� � � � � � � � � � � � � � � � � � � � � � � � � � � � �� �

� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ! � � � � � � � � � � � � � � � � � � � � � � � � � � � �

" # $ % # $ & ' # ( ) # # * # ( * + % , # % & & % ( % $ - + * # , . - $ ) # / % 0 % # 1 2 + % # ) 3 - % 4 $ ) & $ ) , 5 6 , 7 . %8 ) + ) . , + % # $ % # ( ) # # * # $ ) 4 $ * ( * + % # % & . , ) $ ) & % 9 ) 8 . & $ ) % # - , ( 3 % # 8 * , * . , )$ ) & % 9 ) 3 * 4 : ) % 8 * , ( 3 - 8 ) + ) 1 ; # + ) + * # + % % 4 $ & ) + ) # < * ( * & / % 0 % # 8 = ) , ) + * # > ? @ A B %* # + ) + * # + % # ) C + ) � A B@ A B D

E F G H I J K L ( & % $ % 4 + % M # % ( & * : & ) , ) & . , 8 * , ( . $ ) + * & ( ) & ) 8 ) 3 8 . 3 ) & ) N & % ) + % . ,8 C & 8 . 3 * . # ) 4 + * ) 9 O & , . 3 )

a = pi*r 2 P - 4 $ & * + . 0 - 4 + * . , / ) 3 * & 4 . , 6 & - 8 * ( ) & ) *& ) - *

r8 * , * + ) + * + % % 4 $ & ) + ) 1

Q ) & ) 9 ) 0 % & * ( & * : & ) , ) ( & % $ % 4 + - + * P $ % , * # + % + - 0 % & ) * 8 * , ( . $ ) + * & ( ) & ) % R % 8 . $ ) &) # # % : . - 4 $ % # $ ) & % 9 ) # S

T � U � � � � � � � � � V � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �

� W � � � � � � � � � � � � � �� �

X � � � � � � � � Y � � � � � � � � � � � � ! W � � � � � � � � � � � � � � � � � � � � � � W � � � �

� � Z � � � � � � � � � � � � � � � � � � � �

[ ) + ) . , ) + % # $ ) # $ ) & % 9 ) # ( * + % 4 % 8 % # # - $ ) & + % . , ) * . , ) - # - 4 # $ & . \ ] % # 4 . ,( & * : & ) , ) + % 8 * , ( . $ ) + * & 1

^ _ ` a b c a d ` e f d g h i a h c j c k l im # $ ) & % 9 ) # n P o P p P % # ( % 8 - 9 - 8 ) + ) # ) 8 - , ) 9 * & ) , % # 8 & - $ ) # % , Q * & $ . : . ' # 1q 4 9 % 3 - 0 , % 4 $ % P * # 8 * , ( . $ ) + * & % # 4 < * % 4 $ % 4 + % , 3 - 4 : . ) : % 4 # 4 ) $ . & ) - # 8 * , * *Q * & $ . : . ' # P ) ( % 4 ) # % 4 $ % 4 + % , 3 - 4 : . ) : % 4 # + % 8 * , ( . $ ) + * & 1 r * , % # , * , * + * 7 . %% R - # $ % , / N & - ) # 3 - 4 : . ) : % 4 # 4 ) $ . & ) - # s Q * & $ . : . ' # P t 6 $ . , P q 4 : 3 ' # P % $ 8 u P $ ) , 5 6 ,% R - # $ % , / N & - ) # 3 - 4 : . ) : % 4 # + % ( & * : & ) , ) \ < * + % 8 * , ( . $ ) + * & % # s [ P [ v v P w ) / ) P% $ 8 u 1 x % # $ ) + - # 8 - ( 3 - 4 ) / ) , * # ) ( & % 4 + % & * # 9 . 4 + ) , % 4 $ * # + ) ( & * : & ) , ) \ < * + %8 * , ( . $ ) + * & % # . # ) 4 + * ) 3 - 4 : . ) : % , w ) / ) 1 ; # ( & - 4 8 C ( - * # 9 . 4 + ) , % 4 $ ) - # + * w ) / )# < * 8 * , . 4 # ) . , ) 5 * ) ( ) & $ % + ) # 3 - 4 : . ) : % 4 # + % ( & * : & ) , ) \ < * 1 ; , % # , * # %

Page 10: Introdução à Programação de Computadores em Java

( ) # # ) % , & % 3 ) \ < * � # 3 - 4 : . ) : % 4 # 4 ) $ . & ) - # 1 � . % , # ) 5 % Q * & $ . : . ' # % " # ( ) 4 = * 3 P $ % & N, % 4 * # + - 9 - 8 . 3 + ) + % # % , ) ( & % 4 + % & q $ ) 3 - ) 4 * P + * 7 . % 7 . % , 4 < * # ) 5 % 1 r ) , % # , )9 * & , ) P 7 . % , $ % , 8 * 4 = % 8 - , % 4 $ * # # O 3 - + * # + % w ) / ) P $ % & N $ ) , 5 6 , , % 4 * #+ - 9 - 8 . 3 + ) + % # % , ) ( & % 4 + % & * . $ & ) 3 - 4 : . ) : % , + % ( & * : & ) , ) \ < * 1

� i j g _ �c f i h d e; # 8 * , ( . $ ) + * & % # 4 < * % 4 $ % 4 + % , + - & % 8 $ ) , % 4 $ % . , ) 3 - 4 : . ) : % , + % ( & * : & ) , ) \ < *8 * , * * w ) / ) P ) ( % 4 ) # % 4 $ % 4 + % , ) 8 = ) , ) + ) � > ? � A � � � � � � A > ? � 1 " # $ ) 3 - 4 : . ) : % ,/ ) & - ) + % 8 * , ( . $ ) + * & ( ) & ) 8 * , ( . $ ) + * & + % ( % 4 + % 4 + * + * $ - ( * + % ( & * 8 % # # ) + * & 1 2( * # # C / % 3 9 ) 0 % & ( & * : & ) , ) # + - & % 8 $ ) , % 4 $ % % , 3 - 4 : . ) : % , , N 7 . - 4 ) , ) # 7 . ) # %4 - 4 : . 6 , * 9 ) 0 ( * & 7 . % - # # * 6 . , ) $ ) & % 9 ) . , ( * . 8 * , * & * # ) % 8 * , ( 3 - 8 ) + ) 1 ,( & * : & ) , ) % , 3 - 4 : . ) : % , , N 7 . - 4 ) 6 - 4 8 * , ( & % % 4 # C / % 3 % $ % , , ) - # * . , % 4 * # *# % : . - 4 $ % ) # ( % 8 $ * S

� � � � � � n � � n n n � n n n � n n n� � � � � � n � � n � n n � � � � n � n� � � � � n � n n n n � n n � n � n � �

m 3 - 4 : . ) : % , , N 7 . - 4 ) 6 8 * 4 # $ - $ . C + ) ( * & � # % n # ( * & 7 . % * # 8 * , ( . $ ) + * & % # # < *, N 7 . - 4 ) # % 3 % 8 $ & O 4 - 8 ) # 1 [ * , * $ ) 3 P ) 7 . - 3 * 7 . % % 3 % # % 4 $ % 4 + % , + - & % 8 $ ) , % 4 $ % # < *# - 4 ) - # % 3 % 8 $ & O 4 - 8 * # 1 " # # % # # - 4 ) - # % 3 % 8 $ & O 4 - 8 * # $ ' , + * - # % # $ ) + * # S 3 - : ) + * %+ % # 3 - : ) + * P 7 . % # < * ) 7 . - & % ( & % # % 4 $ ) + * # ( * & n % � P & % # ( % 8 $ - / ) , % 4 $ % 1 ; 9 ) 8 $ * + % *8 * , ( . $ ) + * & # O $ & ) 5 ) 3 = ) & 8 * , + * - # # C , 5 * 3 * # 4 < * 3 - , - $ ) ) 7 . - 3 * 7 . % ( * + % 9 ) 0 % & 1m # ( % # # * ) # $ ) , 5 6 , # O $ & ) 5 ) 3 = ) , 8 * , o p 3 % $ & ) # , ) # * 4 � , % & * + % ( ) 3 ) / & ) # % + %9 & ) # % # 7 . % 8 * 4 # % : . - , * # % # 8 & % / % & 8 * , % # # ) # o p 3 % $ & ) # 6 - 3 - , - $ ) + * 1 m # 9 & ) # % # �+ % � # % n # + ) 3 - 4 : . ) : % , , N 7 . - 4 ) # < * & % ( & % # % 4 $ ) , - 4 # $ & . \ ] % # P 4 � , % & * # P 3 % $ & ) # P% / ) & - N / % - # 1 Q * & % R % , ( 3 * P * 8 * 4 � . 4 $ * + % � # % n # 7 . % / - , * # � ( * . 8 * # < * ( * + % & < *& % ( & % # % 4 $ ) & * # % : . - 4 $ % 1

� ; m r qm r r �� t ; � " �

Page 11: Introdução à Programação de Computadores em Java

� �

" # $ ) # p - 4 # $ & . \ ] % # # < * . , ) / ) & - ) 4 $ % # - , 5 O 3 - 8 ) + ) # - 4 # $ & . \ ] % # % , 3 - 4 : . ) : % ,, N 7 . - 4 ) 1 m / ) & - ) 4 $ % # - , 5 O 3 - 8 ) 8 = ) , ) M # % � > ? � A � � � � � � � � � � �� % 6 . , ( * . 8 *, ) - # ( % & 8 % ( $ C / % 3 + * 7 . % . , ) # % 7 . ' 4 8 - ) + % � # % n # 1 m ( % # ) & + % $ . + * P 4 < * 6 $ < *8 3 ) & ) 8 * , * S

� � - v �

" # $ ) � 3 $ - , ) - 4 # $ & . \ < * � N 6 ( ) & % 8 - + ) 8 * , ) 4 * $ ) \ < * , ) $ % , N $ - 8 ) ) 7 . % % # $ ) , * #= ) 5 - $ . ) + * # 1 m # - 4 # $ & . \ ] % # + % 3 - 4 : . ) : % 4 # 8 * , * * [ P [ v v * . w ) / ) P $ ' , % # $ %) # ( % 8 $ * 1 " # $ ) # 3 - 4 : . ) : % 4 # 8 = ) , ) , M # % � > ? � A � � � ? � � � � � B � ? � � � � ( * & 7 . % % # $ < * ). , 4 C / % 3 & % 3 ) $ - / ) , % 4 $ % + - # $ ) 4 $ % + * # + % $ ) 3 = % # - 4 $ % & 4 * # + * 8 * , ( . $ ) + * & 1 m *8 * 4 $ & N & - * + % # $ ) # P ) 3 - 4 : . ) : % , , N 7 . - 4 ) % ) # . ) / ) & - ) 4 $ % # - , 5 O 3 - 8 ) s * ) # # % , 5 3 � u8 = ) , ) , M # % � > ? � A � � � ? � � � � � >� � ? � � � � 1

2 , . - $ * , ) - # # - , ( 3 % # ( & * : & ) , ) & . $ - 3 - 0 ) 4 + * . , ) 3 - 4 : . ) : % , + % ( & * : & ) , ) \ < * + %) 3 $ * 4 C / % 3 1 m # # - , P * 7 . % # % 8 * # $ . , ) 9 ) 0 % & 6 . $ - 3 - 0 ) & . , ( & * : & ) , ) % # ( % 8 - ) 3 7 . %$ & ) + . 0 ) . $ * , ) $ - 8 ) , % 4 $ % ( & * : & ) , ) # % # 8 & - $ * # % , 3 - 4 : . ) : % 4 # 8 * , * * [ ( ) & ) )3 - 4 : . ) : % , , N 7 . - 4 ) 7 . % * 8 * , ( . $ ) + * & % 4 $ % 4 + % 1 " # # % # $ & ) + . $ * & % # 8 = ) , ) , M # % � � @ > � � � � � � 1

m 9 - : . & ) ) 8 - , ) - 3 . # $ & ) * $ & ) 5 ) 3 = * + * 8 * , ( - 3 ) + * & 1 ; 9 - 8 = % - & *ola.c

6 . ,( & * : & ) , ) % # 8 & - $ * % , 3 - 4 : . ) : % , [ 1 ;

ola.c6 # . 5 , % $ - + * ) * 8 * , ( - 3 ) + * & P % % # $ %

$ & ) + . 0 *ola.c

( ) & ) * 9 - 8 = % - & *ola.exe

7 . % 6 8 * , ( * # $ * ( * & - 4 # $ & . \ ] % # % ,3 - 4 : . ) : % , , N 7 . - 4 ) 1

� % * 4 * # # * ( & * : & ) , ) % # ( % 8 - ) 3 % , / % 0 + % : % & ) & 8 O + - : * + - & % 8 $ ) , % 4 $ % ( ) & ) ), N 7 . - 4 ) 9 C # - 8 ) : % & ) & 8 O + - : * ( ) & ) . , ) , N 7 . - 4 ) / - & $ . ) 3 % 4 $ < * $ * , ) * 4 * , % + %> ? B �

@ � B � � �

1 , ) , N 7 . - 4 ) / - & $ . ) 3 4 < * 6 , ) - # + * 7 . % . , ( & * : & ) , ) 7 . %# - , . 3 ) . , ( & * 8 % # # ) + * & # - , ( 3 - 9 - 8 ) + * 1 2 * 7 . % ) 8 * 4 $ % 8 % 4 * w ) / ) 1 " , w ) / ) *4 * # # * ( & * : & ) , ) % # ( % 8 - ) 3 8 = ) , ) M # % � ) / ) 8 % % , / % 0 + % : % & ) & # % 7 . ' 4 8 - ) + % � # %n # ( ) & ) * 4 * # # * 8 * , ( . $ ) + * & 9 C # - 8 * P : % & ) ) 7 . - 3 * ) 7 . % 8 = ) , ) � � B � � � � � P > D � D

Page 12: Introdução à Programação de Computadores em Java

� �

- 4 # $ & . \ ] % # ( ) & ) ) , N 7 . - 4 ) / - & $ . ) 3 w � � � w ) / ) � - & $ . ) 3 � ) 8 = - 4 % 1 ; 7 . % 6 7 . % # %: ) 4 = ) 8 * , - # $ * �

m 3 - 4 : . ) : % , , N 7 . - 4 ) % * ) # # % , 5 3 � 4 < * # < * . 4 - / % & # ) - # P / ) & - ) 4 + * + %( & * 8 % # # ) + * & ( ) & ) ( & * 8 % # # ) + * & 1 " # # ) 6 . , ) + ) # : & ) 4 + % # / ) 4 $ ) : % 4 # + % # %( & * : & ) , ) & 4 . , ) 3 - 4 : . ) : % , + % ) 3 $ * 4 C / % 3 1 m 3 6 , + % # # ) / ) 4 $ ) : % , P % R - # $ % ,* . $ & ) # S

− � � � � � � � � � � V � � � ! Y � � �− � � � � � � � � � ! � � � � � � � � � � � � �− � � � � � � � � � � � � � � ! � � � � � � � � � � � � � � � � � � � ! � � � � �

� � � � � � � � � � � � � � � � � � � � � � � � � � � � �

� � � � � � � � ! � " � � �# �$ % & ' % ( ) * + , ' - . / 0 ) 1 & 2 ' 1 + . 3 * 2 4 3 - ) % . 2 . * 3 % + ' ( 3 - + * 2 4 ' 5 + & * ) + 6 % 3 1 * 3 7 ' .. 2 . * 3 % + . ' ( 3 - + * 2 4 ' . % + 2 . & ' 1 8 3 & 2 , ' . 3 ) . + , ' . . 9 ' ' : 2 1 , ' ; . 3 ' < 2 1 ) = 7 % + .3 = 2 . * 3 % ' ) * - ' . > ? $ % . 2 . * 3 % + ' ( 3 - + * 2 4 ' @ & ' 1 . * 2 * ) A , ' ( ' - ) % & ' 1 B ) 1 * ' , 3( - ' C - + % + . D ) 3 0 + E 3 % , 3 2 1 * 3 - 0 + & 3 3 1 * - 3 ' 8 + - , ; + - 3 , ' & ' % ( ) * + , ' - 5 , 2 . & ' 7% 3 % / - 2 + 7 - + * ' 7 * 3 & 6 + , ' 7 ) 1 2 , + , 3 , 3 ( - ' & 3 . . + % 3 1 * ' > 3 ' . ' ) * - ' . ( - ' C - + % + . , 3+ ( 6 2 & + F 9 ' 5 & ' % ( 2 6 + , ' - 3 . 7 3 , 2 * ' - 3 . , 3 * 3 = * ' 7 ( - ' C - + % + . , 3 , 3 . 3 1 8 ' 7 0 ' 6 8 + . , 3& G 6 & ) 6 ' 7 . 2 . * 3 % + . , 3 H + . 3 . , 3 , + , ' . 7 B ' C ' . 7 H - ' ; . 3 - . ( + - + + & 3 , 3 - I J 1 * 3 - 1 3 * > ?

Page 13: Introdução à Programação de Computadores em Java

� �

� . 2 . * 3 % + ' ( 3 - + * 2 4 ' & ' 1 * - ' 6 + 3 & ' ' - , 3 1 + + ) * 2 6 2 E + F 9 ' , ' 8 + - , ; + - 3 ( 3 6 ' . 4 G - 2 ' .( - ' C - + % + . , 3 + ( 6 2 & + F 9 ' ? � ' H B 3 & * 2 4 ' , ' . 2 . * 3 % + ' ( 3 - + * 2 4 ' @ 0 ' - 1 3 & 3 - ) %+ % H 2 3 1 * 3 , 3 * - + H + 6 8 ' ( + - + D ) 3 ' . ' ) * - ' . ( - ' C - + % + . 3 ) * 2 6 2 E + , ' - 3 . ( ' . . + %0 ) 1 & 2 ' 1 + - ?

� ' . ( - ' C - + % + . D ) 3 0 ) 1 & 2 ' 1 + % 1 ) % & ' % ( ) * + , ' - 7 . 3 B + % + ( 6 2 & + F � 3 . 7& ' % ( 2 6 + , ' - 3 . 7 2 1 * 3 - ( - 3 * + , ' - 3 . 7 B ' C ' . ' ) . 2 . * 3 % + . ' ( 3 - + * 2 4 ' . 7 & 8 + % + � . 3 % ) 2 * + .4 3 E 3 . � �� � � ?

Page 14: Introdução à Programação de Computadores em Java

� �

� � � � � � � � � � � � � � � � � � � � �

� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ! � � � � " � # $ � � � � � � � " � � � � % & � � � � � � ' � � �� � � # $ � � � � " � � � � � � � � " � � � � � ( ) � � ) � � � � � �� � ) �* � ) � # $ � � � � " � � � � � � � +

, - . / 0 . 1 . 2 2 3 4 5 6 7 8 4 8 9 8 : . 4 - ; 7 4 6 < 4 8 ; 8 = . 1 6 ; 7 - > 8 = 6 4 ? @ ; 84 . 2 7 6 2 > 8 2 5 ; 7 A 5 2 > 8 2 . 4 5 8 B

C D @ ; . = 5 > 6 4 = . > . E > 6 F 6 0 = . . 2 1 4 . G . 4 8 2 5 0 2 > 4 - H I . 2 = 6 7 4 6 < 4 8 ; 8 J

K D @ ; 1 6 ; 7 5 A 8 = 6 4 7 8 4 8 > 4 8 = - : 5 4 6 7 4 6 < 4 8 ; 8 0 - ; 8 A 5 0 < - 8 < . ; . E . 1 - > 3 G . A

7 . A 6 1 6 ; 7 - > 8 = 6 4 J

L , - . 2 > M 6 9 - 0 = 8 ; . 0 > 8 A / . 2 > 8 B 6 2 7 4 6 < 4 8 ; 8 2 = . G . ; 4 . 2 6 A G . 4 7 4 6 N A . ; 8 2 D O 6 ; 64 . 2 6 A G . 4 - ; 7 4 6 N A . ; 8 - 2 8 0 = 6 - ; 1 6 ; 7 - > 8 = 6 4 ? P . Q 8 ; 6 2 B

C D

L 0 8 A 5 2 8 4 6 7 4 6 N A . ; 8 F 7 8 4 > 5 0 = 6 R 6 . G . 0 > - 8 A ; . 0 > . . ; 7 4 6 N A . ; 8 2 ; 8 5 22 5 ; 7 A . 2 S 8 . 2 > 8 9 8 2 . 1 T 8 ; 8 R 2 . 8 9 8 2 . = . 8 0 3 A 5 2 . J

K D U . 2 . 0 G 6 A G . 4 - ; 8 9 6 4 ; 8 = . 4 . 2 6 A G . 4 6 7 4 6 N A . ; 8 F 6 - 1 8 = 8 - ; = 6 2

G 3 4 5 6 2 2 - N 7 4 6 N A . ; 8 2 J V 9 6 4 ; 8 = . 4 . 2 6 A G . 4 - ; 7 4 6 N A . ; 8 1 T 8 ; 8 R 2 .8 A < 6 4 5 > ; 6 J

W D X 4 8 = - : 5 4 6 8 A < 6 4 5 > ; 6 0 - ; 8 A 5 0 < - 8 < . ; = . 7 4 6 < 4 8 ; 8 H M 6 F Y Z [ Z F 6 N > . 4 - ;

7 4 6 < 4 8 ; 8 J\ D

O 6 ; 7 5 A 8 4 . 1 6 4 4 5 < 5 4 . G . 0 > - 8 5 2 . 4 4 6 2 = . 1 6 ; 7 5 A 8 H M 6 F > 8 0 > 8 2 G . : . 2, - 8 0 > 8 2 8 2 0 . 1 . 2 2 3 4 5 8 2 J

] D P . 4 5 9 5 1 8 4 2 . 6 2 4 . 2 - A > 8 = 6 2 7 4 6 = - : 5 = 6 2 7 . A 6 7 4 6 < 4 8 ; 8 1 6 4 4 . 2 7 6 0 = . ;

8 6 , - . 2 . 7 4 . > . 0 = . D ^ . 7 . > 5 4 - ; 8 6 - ; 8 5 2 9 8 2 . 2 F 2 . 0 . 1 . 2 2 3 4 5 6 D

_ � `� � a�

II

O

Page 15: Introdução à Programação de Computadores em Java

� �

@ ; 8 A < 6 4 5 > ; 6 / F 7 6 4 > 8 0 > 6 F - ; ; / > 6 = 6 = . 4 . 2 6 A G . 4 - ; 7 4 6 N A . ; 8 D � 2 > . 7 4 6 N A . ; 80 M 6 > . ; , - . 2 . 4 0 . 1 . 2 2 8 4 5 8 ; . 0 > . - ; 7 4 6 N A . ; 8 = 6 ; - 0 = 6 = 6 2 1 6 ; 7 - > 8 = 6 4 . 2 D� 8 5 2 1 6 0 1 4 . > 8 ; . 0 > . F - ; 8 A < 6 4 5 > ; 6 / - ; 1 6 0 Q - 0 > 6 9 5 0 5 > 6 = . 5 0 2 > 4 - H I . 2 7 4 . 1 5 2 8 2 .6 4 = . 0 8 = 8 2 , - . 4 . 2 6 A G . - ; = . > . 4 ; 5 0 8 = 6 7 4 6 N A . ; 8 D

� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �� � � � � � � �

� � � � � � � � � � � � � � � � � � � � � � � � � � � �� �

� � � � � � � � � � � � � ! � � � � � � � � � � � � � � "# $ % $ & ' ( ) * +, �

- � � � � � � � � � � � � � � . � � � � � � � � � � � � � � " ( )# $ % $ & ' ( ) * +/ �

- � � � � � � � � � � � . � � � � � � � � � � � � � � � � � � � � � � � �� � � � � � � 0 1 � � � 2 " )# $ 3 4 3 $ 5 * +

6 � � � � � � � � � � � � � � � � � � � � � � � � ! � � � � � � � � � � � � � � � � � 7

� � � � � � � " )# $ 3 $ 8 % 3 $ 5 * +9 �

: � � ; � � � � � � � � � +< �

: � � � � � � � = � +

> � ? . � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � @ � � � � � � � � . � � � � � �� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �

A � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � . � �� �

B � � � � � � . � � � $ C ) C � � . � � D � � � � � � � � � � � +, �

E � � � � � � � � � � � $ C ) C � � � � � � . � @ � � � � � � � � � � � � � � � �� � � . � � . 7 � � � � � � � � � � � � +

/ � F � � � � � � � � � $ C ) C � = � � � � D �

G � � � � � � � ? � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �� � � � � � � � � � � � � � � � � � . � � 7 � . � � � � � � � � � � � � � � � � � � � � � . � � �

H I J K L M N O N P N K Q � @ � � � � � . � � 7 � � � � � � . � � � � � . � � 7 � � � � � ! . � �H I J K L M R N O K Q S � � � � � @ � � . � � � . � �T U K O I R M U V K W X M S � � � . � � � � � � � � � � � � � � � � � � � � � �

Page 16: Introdução à Programação de Computadores em Java

� �

� � � � � � � � � � � � � � � � � � � � � � � � � � � 1 � � � � � � � � � � � � � � � � � � � � � � � � � � . = � � . � �

� � E � � � . � � @ � � � � � � � � � � � � � � � � +

, �

� � � � � � � � � � � � � � � � � �

� � � � � � � . � � � � � � � � @ � � . � � � . � � � � � � � @ � � . � � � � � � � � � � � � � � � � � � � . � � � � . � � � � � � � � � � �

� � E � � � . � � @ � � � � � � � � � � � � � � � � +

, �

� � � � � � � � � � � � � � � � � � , � � �

- � � � . � . � � 7 � � � � � � . � � � � � . 7 @ � � +, � , �

� � � � � � � � � � � � @ � � +, � / �

� � � � � � � � � � . � � � � � � � � � � � � � . � � � � +, � 6 �

� � � � � � � � � � � @ � � � � � � � � +, � 9 �

E � � . � � � � . � � 7 � � � � � ! . � +, � < �

� � ? � � � � � � � � � � � � � � � � +

> � � � � � � � � � � � � � � � � � ? � � � � � � � � � � . � � � � � � � � . � � � � � � � � � . � � � �� � , � � . � � � , � 9 � � � � � � � � � � � � � � � � � � � � �

A � � � . � � � � � � � . � � � � � � � � � � � � � � � � � � . � � � � � � � � � � � �. � � � � � � � � . � � � � � � � � � � � � � D � � � - � � � � . � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � " � � � � � � � . � � � � � � � � � . � � � � � � ! . � * � � � � � � � � � � � � �� � � � � � � � . � � �

A � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � . � � � � � � � � �� � � � � � � � � � � " � � � . � � � � � � � � � � � � � � � � � � � � � * � � � � � � � � � � � � � � � � � � � � � 5 ' ) 3 ) � 5 4 � ' 5 � $ � & ' � 5 � � � $ % � � ) ( $ ) % & ) � � F � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �

> � ? . � � � � � � � � � � � � � � � � . � � . = � � � � � � � � � � � � � � � � � � � � � � � �

Page 17: Introdução à Programação de Computadores em Java

� �

G � D � � � � � � � � � � � � � � � � � � � � � � � � . � � � � � � � � � � � � � � � � � � � � � � � � �� � � . � . � � � � � � � � � � � � � � � � � � � � � � � � � �

H I J K L M N O N P N K Q S � � � � � � . � � � � � � � � � � � � � � � � � +H I J K L M R N O K Q S � � � � � � � � +T U K O I R M U V K W X M S - � . � � � � � ! � � � � � � � � � � � � � � � � � � +

- � . � � � � � � � � � � � � � � � � � � � � � � ! � � � � � � � � � � �

E � � � � � � � � � � � � . � � � � � � � � � � � � � � � � � � � � � � � � � . � � � � . � � � � � . � � � � � � � � � � � � � � � � � � . � � � � � � � � � � . � � � � � "� � � � � * � � � � � � � � � � � � F. � � � � � � � � � � . � � � � � � � � � � � � � � � � D � � � . � � � � � � � � � 5 � � � � ) � ) ) % & 5 � ) �. � � � � � � � � � � � � � � � � � � � � � � � � � . � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � . � � � � � � � � � . � � � � � . � � � � � � � � �

� �

� � � . � � � � � � � � � � � � � � � � � � � @ � � . � � � � � � ! � � � � � � � � � � +. 7 � � � � � � � � � � � � � � � � � � � � � % � ) � � +

, �

� � � . � � � � � � � � � � � � � � � � � � � � � � @ � � � � � � � � � � � � � +. 7 � � � � � � � � � � � � � 5 +

/ � � � � � � � � � � � � � � � � � � � � � � � � � �

6 � E � � . � � � � � % � ) � � +

9 � E � � . � � � � � � � � � � � � � � � 5 +

< � � � � � � � � � � � � � � � � � � � � � � � �

� � E � � . � � � � � % � ) � � +

� � E � � . � � � � � � � � � � � � � � � 5 +

� �

� ; � � � � � � � � � ! � � � � � � � � � � � � � �

� � � E � � . � � � � � % � ) � � +

� , � E � � . � � � � � � � � � � � � � � � 5 +

� / � � � � � � � � 5 � � � % � ) � � +

� 6 � � � � � � � � � � � � � +

� 9 � B . � � � � � � � � � � � �

� � � � � � � � � � � � � � � / � 6 � 9 � � � � � � � � � � � � 7 � � � � � � < � � � � � �� � � . � � � � � � � � � � � � � � � � � � � � � � � . � � � � � � � � � � � � � � � � � � � � �

Page 18: Introdução à Programação de Computadores em Java

� �

� � � � � � � � . � � � . � � � � 7 � � � . � � � � � � � � � . � � � )� $ � $ � $ ( 5 ( ) � $ C ) C � � � � � � � � � @ . � � � � � � � � � � . � � � � � � � � � � � � � � � � � � � � � � � �

� �

� � � . � � � � � � � � � � � � � � � � � � � @ � � . � � � � � � ! � � � � � � � � � � +. 7 � � � � � � � � � � � � � � � � � � � � � % � ) � � +

, �

� � � . � � � � � � � � � � � � � � � � � � � � � � @ � � � � � � � � � � � � � +. 7 � � � � � � � � � � � � � 5 +

/ � � � � � � � � � � � � � � � � � � � � . 7 � � � � ! � � � � � � � � �

/ � � � � � � � � � � � � � � ? � � � � � � � � � � � �

/ � , � E � � . � � � � � % � ) � � +

/ � / � E � � . � � � � � � � � � � � � � � � 5 +

6 � � � � � � � � 5 � � � % � ) � � +

9 � � � � � � � � � � � � � +

< � B . � � � � � � � � � � � �

- � � � � � � � � . � � � � � � � � � � � � � � � � � � � � � . � @ � � � � � � � � . � � � � � � � �� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � . � � � . � � � � � � �� . � � 7 � � � � � � � � � � � . � � � � � � � � � " � � � � � � . � � � � � � � � * � � � � � � 1 � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � . � � � � � � � � � � � � � � � � � � � � �� � � � � � � � � A � � � � � � � � � � � � � � . � � � � � � � � � � � � � � . � � � � � � � � � � � � � � � ? � � � � � � � � � � � � � � . � � � $ C ) C � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �

� � � � � � � . � � � � � � � � � � � � � @ � � � � � � � � � � � � � � � � � � � � � � � �

� � � � � <� � � � ;

A � � � . � � ,

� � � � � � � � � � . � . � � � � . � � � � � � � � � � � � � � � � � � . � � � � B � � � � . � � � � . �� � � � � � � � � � � � � � � � � @ � � � � � � � � � � � � A � � . � � � � � � � � � � � � � � � � � � � . � � � � � � � � � � / � � � � � 6 � � � � � � � � � � � � � � � � � � �� � � � � � � � � � � � � 5 � % � ) � � � � � � � � � � � � � � � � � � � � � � � � � � : � � � � � � � � � �

Page 19: Introdução à Programação de Computadores em Java

� �

� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � . � � � �

F � � � � � � � � . � � � � � � � � � � � � . 7 � � � � � � K Q P � Q K � � L N K � � � �

F � � � � � � � � � � � . � � � � � � � � � � � � � � � � � @ . � � � � � � � � � � � � � � @ � � � � �� � � � � � � � � � � � � � � � � � � � � � . � � � � � � A � � � � � � � � � � . � � � � D @ � � � � � � � � �� � � � � � � � � � � . � � � � � � � . � � � � � � � � � � � � � @ � � � B ? � � � � @ � � � � � � � � � � � � � � � � � � � . � � � � � � � � � � � � � � � � . � � � � � � � � . � � � � � � � � � � � � � � � � �

� � � � � � � � . � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � . � � � � � � � � � �� � � � 7 � � � � � � � � � � �

� �

� � � � A : � � � � � � � � �

� � � � � � � � � � � � � � � � � � � � ��

! " # $ # % & ' ( ) % * + & % , - & + . / ' - 0 - & ) # & 1 2 % & % $ + " 3 % & + " 4 ( - & + 5 -% * ' " + 0 6 $ 7 % ( % & - ( + 0 % - 0 3 - ) % * + & 0 # ( 2 * - 0 ( - " 3 - 8 9 : ; < = 6

> ! " # $ # % & + ' 3 & + ) % * + & % , - & + . / ' - 0 - & ) # & 1 2 % & % ? ' % & 5 % & % 0 + ( % 5 % 0

" + 3 % 0 6 $ 7 % ( % & - ( + 0 % - 0 3 - ) % * + & @ = : A 6B

C - 2 - 3 # & + 0 2 % 0 0 + 0 0 - ? ' # " 3 - 0 % 3 D $ 7 - ? % & % + 4 * 3 # ( + % * ' " +B �

E - & % " + 3 % 5 + 2 & F G # ( + % * ' " + 5 % 3 % H - * %B >

I 5 # $ # + " % & � % 8 9 : ; < = 6B B

I 5 # $ # + " % & % " + 3 % 5 + % * ' " + % @ = : A 6J

K - " 4 ( - & + L + & , - & +J �

M 0 $ & - ) - & N % H - * % ) % , # %O

K - " P +O �

Q # ) # 5 # & @ = : A 2 + & 8 9 : ; < = 6O >

R ' % & 5 % & + & - 0 ' * 3 % 5 + 6O B

M 0 $ & - ) - & + & - 0 ' * 3 % 5 +

Page 20: Introdução à Programação de Computadores em Java

� �

>

� % * $ ' * % & % 0 + ( % 5 + 0 � � 2 & # ( - # & + 0 " 4 ( - & + 0 " % 3 ' & % # 0B

� % * $ ' * % % 0 + ( % 5 + 0 � � 2 & # ( - # & + 0 " 4 ( - & + 0 " % 3 ' & % # 0 2 % & - 0

J � & + $ ' & % & " + 3 % 5 - % * ' " + - ( 2 % ' 3 % 6

O � - & # L # $ % & 0 - ' ( " 4 ( - & + - 0 3 1 - " 3 & - � - � �

� � & 5 - " % & 2 + & + & 5 - ( $ & - 0 $ - " 3 - 5 + # 0 " 4 ( - & + 0 5 % 5 + 0 6

� � & 5 - " % & 2 + & + & 5 - ( $ & - 0 $ - " 3 - 3 & 0 " 4 ( - & + 0 5 % 5 + 0 6

� % * $ ' * % & + " 4 ( - & + 5 - 5 � ? # 3 + 0 5 - ' ( " 4 ( - & +

Page 21: Introdução à Programação de Computadores em Java

� �

� � � � � � � � � � � � � � � � � �� � �� � + & 3 ' ? ' 0 " % & & % 3 # ) + . $ + ( + % ( % # + & 2 % & 3 - 5 % 0 * � " ? ' % 0 " % 3 ' & % # 0 . % 2 & - 0 - " 3 %% * ? ' ( % 0 % ( H # ? ' # 5 % 5 - 0 2 - * + / ' - " P + 5 - ) - 0 - & ' 0 % 5 + " % - 0 2 - $ # L # $ % � P + 5 -% * ? + & # 3 ( + 0 � ( - 5 # 5 % / ' - ) % ( + 0 & - ( + ) - " 5 + % ( H # ? ' # 5 % 5 - % + � + & 3 ' ? ' 0 . ) % ( + 0+ H 3 - " 5 + 0 ' H $ + " � ' " 3 + 0 5 % * # " ? ' % ? - ( $ + " 7 - $ # 5 + 0 2 + & � + & 3 ' ? ' 0 $ + ( 2 % $ 3 + -� + & 3 ' ? ' 0 - 0 3 & ' 3 ' & % 5 + . & - 0 2 - $ 3 # ) % ( - " 3 -

� � + & 3 ' ? ' 0 - 0 3 & ' 3 ' & % 5 + D ' ( 5 + 0 ( D 3 + 5 + 0 ( % # 0 ' 0 % 5 + 0 5 - - 0 2 - $ # L # $ % � P + � + '5 - 0 $ & # � P + � 5 - % * ? + & # 3 ( + 0 � 0 % * ? + & # 3 ( + 0 5 - 0 $ & # 3 + 0 % " 3 - & # + & ( - " 3 - ' 3 # * # , % (� + & 3 ' ? ' 0 - 0 3 & ' 3 ' & % 5 +

� + � + & 3 ' ? ' 0 - 0 3 & ' 3 ' & % 5 + D ' ( 0 ' H $ + " � ' " 3 + 5 + � + & 3 ' ? ' 0 / ' - 2 & - 3 - " 5 - 0 - &$ + " $ # 0 + - 2 & - $ # 0 + � % & % # 0 0 + & - 3 # & % & % ( � 0 - �

− % 5 � - $ 3 # ) + 0 6− % 5 ) D & H # + 0 6− L & % 0 - 0 $ + ( 2 + 0 3 % 0 + ' $ + ( 2 * - G % 0 6− 3 + 5 + 0 + 0 3 - ( 2 + 0 ) - & H % # 0 - G $ - 2 3 + # ( 2 - & % 3 # ) + + ' # " L # " # 3 # ) + 6− I ( % # + & # % 5 + 0 0 # " % # 0 5 - 2 + " 3 ' % � P +

� 2 + 0 0 � ) - * - 0 2 - $ # L # $ % & / ' % * / ' - & % * ? + & # 3 ( + ' 0 % " 5 + + 0 0 - ? ' # " 3 - 0 3 # 2 + 0 5 - - G 2 & - 0 0 � - 0- ( � + & 3 ' ? ' 0 - 0 3 & ' 3 ' & % 5 + � % $ � � - 0 - * - ( - " 3 % & - 0 . 0 - / ' " $ # % 0 . 0 - * - $ � � - 0 - # 3 - & % � � - 0

� � � � � � � � � � ! � � � � " I 0 % $ � � - 0 - * - ( - " 3 % & - 0 # " 5 # $ % ( + / ' - 5 - 2 & # ( # 3 # ) + 5 - ) - 0 - &L - # 3 + K P + - 0 $ & # 3 % 0 $ + ( + - G 2 & - 0 0 � - 0 # ( 2 - & % 3 # ) % 0 + ' # " L # " # 3 # ) % 0 M G - ( 2 * + �

Ler a nota do próximo aluno da tabela

# � $ � % ! � � � " I 0 0 - / ' " $ # % 0 $ + & & - 0 2 + " 5 - ( % ' ( - " $ % 5 - % ( - " 3 + 5 - ' ( % + ' ( % # 0% $ � � - 0 - * - ( - " 3 % & - 0 . $ + ( + - ( �

Ler a nota do próximo aluno da tabela

Page 22: Introdução à Programação de Computadores em Java

� �

Adicionar 1 a número;

Adicionar a nota do aluno a soma;

# � � � � � � � " I 0 0 - * - $ � � - 0 2 - & ( # 3 - ( - 0 $ + * 7 - & - G % $ 3 % ( - " 3 - ' ( % % * 3 - & " % 3 # ) % 5 - ' ($ + " � ' " 3 + 5 - % * 3 - & " % 3 # ) % 0 K P + 7 % H # 3 ' % * ( - " 3 - & - 2 & - 0 - " 3 % 5 % 0 " % L + & ( % �

K - � $ + " 5 # � P + �

� % $ � P + ��

0 - " P +� % $ � P + >

$ + ( + - ( �

Se número for zero

Escrever Tabela vazia

Senão

Dividir soma por número;

� � � � � � � � I 0 # 3 - & % � � - 0 5 - L # " - ( ' ( % & - 2 - 3 # � P + * # ( # 3 % 5 % 5 - ' ( % 0 - / ' " $ # % 5 -% $ � � - 0 M 0 $ & - ) - ( � 0 - 7 % H # 3 ' % * ( - " 3 - " % L + & ( % �

M " / ' % " 3 + � $ + " 5 # � P + � L % , � % $ � P + �

+ '

C - 2 - 3 # & � % $ � P + � % 3 D � $ + " 5 # � P + �

$ + ( + - ( �

Repetir os passos seguintes até chegar ao último aluno

Ler a nota do próximo aluno da tabela

Adicionar 1 a número;

Adicionar a nota do aluno a soma;

Page 23: Introdução à Programação de Computadores em Java

� �

� � @ ; � � = � � � � �� = D % # " 5 % ( % # 0 & - 0 3 & # 3 + 5 + / ' - + � + & 3 ' ? ' 0 - 0 3 & ' 3 ' & % 5 + - 2 + 5 - # " $ * ' # &% * ? ' " 0 5 - 3 % * 7 - 0 5 - # ( 2 * - ( - " 3 % � P + - 0 $ & # 3 + 0 ( - 0 ( + $ + ( - * - ( - " 3 + 0 5 % * # " ? ' % ? - (5 - 2 & + ? & % ( % � P + / ' - - 0 3 % ( + 0 % ' 0 % & � 2 0 - ' 5 + � $ F 5 # ? + 2 - & ( # 3 - . 2 + & 3 % " 3 + .5 - 0 $ & - ) - & ' ( % * ? + & # 3 ( + 5 - L + & ( % $ + " $ # 0 % 0 - ( " + 0 2 & - + $ ' 2 % & ( + 0 $ + ( 3 + 5 + +& # ? + & / ' - % * # " ? ' % ? - ( 5 - 2 & + ? & % ( % � P + - G # ? - � � + & 3 ' ? ' 0 - 0 3 & ' 3 ' & % 5 + - 0 3 1 ( % # 02 & F G # ( + 5 + � + & 3 ' ? ' 0 " % & & % 3 # ) + - + 2 0 - ' 5 + � $ F 5 # ? + - 0 3 1 ( % # 0 2 & F G # ( + 5 %* # " ? ' % ? - ( 5 - 2 & + ? & % ( % � P +

� % & % % * D ( 5 - 0 3 - 0 . - G # 0 3 - ( ) 1 & # + 0 + ' 3 & + 0 ( D 3 + 5 + 0 5 - - 0 2 - $ # L # $ % � P + 5 - % * ? + & # 3 ( + 0 .# " $ * ' # " 5 + �

− � * ' G + ? & % ( % 0 6− Q # % ? & % ( % 0 5 - � % 0 0 # � K 7 " - # 5 - & ( % "− N % H - * % 0 5 - 5 - $ # 0 P + 6−

� & ) + & - 0 5 - 5 - $ # 0 P + 6− � & D - 2 F 0 $ + " 5 # � � - 0

Q - 0 3 - 0 ) - & - ( + 0 . % 2 - " % 0 - 2 % & % � 1 . + 0 L * ' G + ? & % ( % 0

� 0 L * ' G + ? & % ( % 0 ' 3 # * # , % ( ' ( 2 - / ' - " + $ + " � ' " 3 + 5 - 0 � ( H + * + 0 2 % & % & - 2 & - 0 - " 3 % & 5 -' ( % L + & ( % ? & 1 L # $ % + 0 % * ? + & # 3 ( + 0 N # 2 # $ % ( - " 3 - . + 0 0 � ( H + * + 0 ' 0 % 5 + 0 0 P + �

Page 24: Introdução à Programação de Computadores em Java

� �

− N - & ( # " % 5 + & �

− Q - $ # 0 P + �

− M " 3 & % 5 % � K % � 5 % �

− � & + $ - 0 0 % ( - " 3 + �

− � + " - $ 3 + & �

− � + " 3 - 5 - * # ? % � P + �

� " + 0 0 + % * ? + & # 3 ( + � � � � � � � � � � � � . % 2 & - 0 - " 3 % 5 + " % 2 1 ? # " % O . 2 + 5 - 0 - & 5 - 0 $ & # 3 +' 0 % " 5 + ' ( L * ' G + ? & % ( % 5 % 0 - ? ' # " 3 - L + & ( % 6

� � �

Page 25: Introdução à Programação de Computadores em Java

� �

� 0 L * ' G + ? & % ( % 0 5 - 0 $ & - ) - ( 5 - ' ( % L + & ( % ? & 1 L # $ % + � � � � = � ; � = 8 � < = � = 5 - ' (% * ? + & # 3 ( + + ' 2 & + ? & % ( % � L * ' G + 5 - $ + " 3 & + * + D % 0 - / ' " $ # % 2 - * % / ' % * + 0 2 % 0 0 + 0 + '% 0 # " 0 3 & ' � � - 0 0 P + - G - $ ' 3 % 5 % 0

I 5 - 0 $ & # � P + + L - & - $ # 5 % 2 - * + 0 L * ' G + ? & % ( % 0 " P + D - 0 3 & ' 3 ' & % 5 % � 0 5 # % ? & % ( % 0 5 -� % 0 0 # � K 7 " - # 5 - & ( % " . L + & % ( 2 & + 2 + 0 3 + 0 2 % & % + H ) # % & - 0 3 - 2 & + H * - ( % - 2 + 5 - ( 0 - &) # 0 3 + 0 $ + ( + L * ' G + ? & % ( % 0 - 0 3 & ' 3 ' & % 5 + 0

� 0 $ + ( 2 + " - " 3 - 0 5 + 0 5 # % ? & % ( % 0 5 - � % 0 0 # � K 7 " - # 5 - & ( % " # " $ * ' - ( �

� � � � � �

M 0 2 - $ # L # / ' - $ % 5 % ' ( 5 + 0 % * ? + & # 3 ( + 0 5 - 0 - " ) + * ) # 5 + 0 " + 0 - G - & $ � $ # + 0 > % ' 0 % " 5 +' ( L * ' G + ? & % ( %

Page 26: Introdução à Programação de Computadores em Java

� �

Codificação de informação� � � � � � � � � � � � � � � � � � � � � �� � � � � � � � � � � � � � � � � � � � � � � � � � �� � � � � � � � � � � � � � � � � �� � � � � � �

0 $ + ( 2 ' 3 % 5 + & - 0 ( % " # 2 ' * % ( 5 # ) - & 0 + 0 3 # 2 + 0 5 - # " L + & ( % � P + # " $ * ' # " 5 + �" 4 ( - & + 0 . * - 3 & % 0 . # ( % ? - " 0 . ) � 5 - + - 0 + (

K - " 5 + ' ( $ + ( 2 ' 3 % 5 + & $ + " 0 3 # 3 ' � 5 + 2 + & $ # & $ ' # 3 + 0 - * - $ 3 & F " # $ + 0 / ' - L ' " $ # + " % (% 2 - " % 0 $ + ( 5 + # 0 - 0 3 % 5 + 0 6 * # ? % 5 + � � � - 5 - 0 * # ? % 5 + � � � 3 + 5 + + 3 # 2 + 5 - # " L + & ( % � P +% $ % H % & 1 0 - ( 2 & - 2 + & 0 - & % & ( % , - " % 5 % $ + ( + ' ( % 0 - / ' " $ # % 5 - 5 � ? # 3 + 0 H # " 1 & # + 0 I 0 0 # ( . 3 + 5 % % # " L + & ( % � P + 3 - ( 5 - 0 - & $ + 5 # L # $ % 5 % 5 - % * ? ' ( % ( % " - # & % " ' ( %0 - / ' " $ # % 5 - , - & + 0 - ' " 0

� � �� � � � � � � � � � � � � � ! � " # � $ � % # & $ � � % ' � ( � # & $ � � % ) ) )* + , - . / . 0 1 2 3 4 0 / 5 6 2 7 + 7 0 3 8 + 9 + / 0 7 2 9 8 0 3 . 3 : / 2 , 2 ; 9 + / + < ; 9 + / + < = 2 , . ; 9 + / + < > > > ?0 7 2 3 4 @ 6 - 2 + 3 : / 2 , A / 0 4 9 . < - 0 6 4 A / 0 4 9 . < 7 0 - A / 0 4 9 . < / 0 4 9 . < > > > ? < 4 + / B C / 0 1 2 3 4 0 /5 6 2 7 + 7 0 3 8 + 9 + / 0 7 2 9 2 6 D . 9 / + E F . : B 2 4 < B G 4 0 < = 2 , . B G 4 0 < / 0 ; + B G 4 0 < ; 2 ; + B G 4 0 <4 0 9 + B G 4 0 < > > > ? >

H / B 2 4 C + 5 6 2 7 + 7 0 7 0 2 6 D . 9 / + E F . - . 9 9 0 3 8 . 6 7 0 6 4 0 + 5 / I 6 2 - . 7 A ; 2 4 . B 2 6 J 9 2 . : K. 5 L ? > H / B G 4 0 3 F . M B 2 4 3 > H / = 2 , . B G 4 0 3 F . N O P Q L K N R B G 4 0 3 > H / / 0 ; + B G 4 0 3 F .N S P B G 4 0 3 : + 8 9 . 1 2 / + 7 + / 0 6 4 0 L / 2 , T F . 7 0 B G 4 0 3 ? > H / ; 2 ; + B G 4 0 3 F . N U P B G 4 0 3: + 8 9 . 1 2 / + 7 + / 0 6 4 0 L B 2 , 2 F . 7 0 B G 4 0 3 ? > H / 4 0 9 + B G 4 0 3 F . N V P B G 4 0 3: + 8 9 . 1 2 / + 7 + / 0 6 4 0 L 4 9 2 , 2 F . 7 0 B G 4 0 3 ? >

W X Y Z[ \ ]^

III

O

Page 27: Introdução à Programação de Computadores em Java

� �

� + 9 + 3 2 / 8 , 2 D 2 - + 9 < C - . 3 4 5 / 0 7 0 3 2 ; 6 + 9 = 2 , . B G 4 0 8 . 9 � B G 4 0 . 5 3 2 / 8 , 0 3 / 0 6 4 0 � � >� / 0 3 / . 3 0 8 + 3 3 + 8 + 9 + / 0 ; + B G 4 0 : � � ? 0 ; 2 ; + B G 4 0 : � � ?

� � � � � � � � � $ � � � � �I ( % # + & 2 % & 3 - 5 + 0 $ + ( 2 # * % 5 + & - 0 ' 0 % ( ' ( " 4 ( - & + L # G + 5 - H # 3 0 2 % & % & - 2 & - 0 - " 3 % &" 4 ( - & + 0 M 0 3 - 0 " 4 ( - & + 0 3 + ( % ( ) % * + & - 0 5 - " 3 & + 5 - * # ( # 3 - 0 - 0 2 - $ � L # $ + 0 / ' - 5 - 2 - " 5 - (5 + " 4 ( - & + 5 - H # 3 0 / ' - ' 0 % ( + 0 2 % & % + 0 & - 2 & - 0 - " 3 % &

� % & % L % $ # * # 3 % & % % 2 & - 0 - " 3 % � P + . ) % ( + 0 $ + " 0 # 5 - & % & ' ( $ + ( 2 # * % 5 + & + " 5 - + 0 " 4 ( - & + 0# " 3 - # & + 0 0 P + & - 2 & - 0 - " 3 % 5 + 0 ' 0 % " 5 + % 2 - " % 0 B H # 3 0 � 0 ) % * + & - 0 2 + 0 0 � ) - # 0 2 % & % - 0 0 - 0 BH # 3 0 0 P + �

� � � . � � � . � � � . � � � . � � � . � � � . � � � - � � �

� " 4 ( - & + 5 - # " 3 - # & + 0 5 # L - & - " 3 - 0 / ' - 2 + 5 - & - ( + 0 & - 2 & - 0 - " 3 % & ' 0 % " 5 + B H # 3 0 D 5 % 5 +2 + & > � K - - ( ) - , 5 - B H # 3 0 3 # ) D 0 0 - ( + 0 . - " 3 P + 2 + 5 - & � % ( + 0 & - 2 & - 0 - " 3 % & > � � > O �

) % * + & - 0 5 # L - & - " 3 - 0 � + $ % 0 + ? - & % * . 2 % & % ' ( $ + ( 2 # * % 5 + & 5 - n H # 3 0 . � ; . 2 % & % ' ($ + ( 2 # * % 5 + & / ' - & - 2 & - 0 - " 3 - # " 3 - # & + 0 ' 0 % " 5 + n H # 3 0 . - G # 0 3 # & P + > n # " 3 - # & + 0 5 # L - & - " 3 - 0

I 3 D % / ' # ) # ( + 0 / ' % " 3 + " 4 ( - & + 0 5 # L - & - " 3 - 0 2 + 5 - ( + 0 & - 2 & - 0 - " 3 % & $ + ( n H # 3 0 N - & - ( + 0 / ' - ) - & % ? + & % / ' % * % / ' % " 3 # 5 % 5 - & - 2 & - 0 - " 3 % 5 % 2 + & ' ( $ - & 3 + " 4 ( - & + ! 0 0 +* - ) % � " + 0 % + 0 0 # 0 3 - ( % 0 5 - " ' ( - & % � P +

� + 9 + 7 + 9 5 / + . 9 7 0 / 7 0 ; 9 + 6 7 0 � +8 . 7 0 / . 3 7 2 � 0 9 � 5 0 �

2 ?

5 / + 7 2 3 � 5 0 4 0 8 . 7 0 + 9 / + � 0 6 + 9 + 4 CL < R R � � 7 0 2 6 D . 9 / + E F .

2 2 ?

5 / � � 7 0 / I 3 2 - + ; 5 + 9 7 +4 2 8 2 - + / 0 6 4 0 � R K � � <

2 2 2 ?

5 / � � � R < � � �2 � ?

+ - + 8 + - 2 7 + 7 0 7 . 7 2 3 - . 9 A ; 2 7 . 7 05 / - . / 8 5 4 + 7 . 9 8 0 3 3 . + , + - 4 5 + ,6 F . 3 0 9 J 3 0 9 2 6 D 0 9 2 . 9 + � K � � >

Page 28: Introdução à Programação de Computadores em Java

� �

� � � $ � � � � � � � � � � � � ! �� 3 2 3 4 0 / + 7 0 6 5 / 0 9 + E F . � 5 0 6 � 3 5 3 + / . 3 6 + 6 . 3 3 + � 2 7 + 7 2 J 9 2 + C . 3 2 3 4 0 / +7 0 - 2 / + , > � 3 4 0 3 2 3 4 0 / + - T + / + � 3 0 7 0 - 2 / + , < . 5 7 0 B + 3 0 L K < 8 . 9 � 5 0 5 4 2 , 2 � + L K3 A / B . , . 3 7 2 D 0 9 0 6 4 0 3 � K < L < N < � < R < � < � < � < M < � > � . / 0 3 4 0 3 L K 3 A / B . , . 3 3 . / . 3- + 8 + � 0 3 7 0 - . 6 3 4 9 5 2 9 6 I / 0 9 . 3 4 + 2 3 - . / . � R � > � 6 I / 0 9 . � R � 4 0 / 5 / +3 0 � 5 6 - 2 + 7 0 � 3 A / B . , . 3 < 7 A ; 2 4 . 3 . 5 + , ; + 9 2 3 / . 3 < 7 . 2 3 7 . 3 � 5 + 2 3 9 0 8 0 4 2 7 . 3 : . 37 . 2 3 3 0 4 0 3 ? > . 0 6 4 + 6 4 . < . 8 9 2 / 0 2 9 . � 4 0 / 5 / � + , . 9 7 2 D 0 9 0 6 4 0 7 . 3 0 ; 5 6 7 . � > �

8 9 2 / 0 2 9 . � + , 0 � K K : � - 0 6 4 0 6 + 3 ? / + 3 . 3 0 ; 5 6 7 . � J 3 � � + , 0 � : � 5 6 2 7 + 7 0 3 ? > � 0D + - 4 . <

747 = 700 + 40 + 7 = 7*10 2 + 4*10 1 + 7*10 0

� . 9 4 + 6 4 . < . 3 + , ; + 9 2 3 / . 3 9 0 8 9 0 3 0 6 4 + / 5 / � + , . 9 7 2 D 0 9 0 6 4 0 - . 6 3 . + 6 4 0 + 3 5 +8 . 3 2 E F . > . 3 2 3 4 0 / + 7 0 - 2 / + , < . 8 0 3 . 7 . 3 + , ; + 9 2 3 / . 3 3 F . 8 . 4 6 - 2 + 3 7 0 L K > * . 7 . 36 � 3 + 8 9 0 6 7 0 / . 3 2 3 4 . 6 + 0 3 - . , + 8 9 2 / J 9 2 + 0 6 + 7 + 7 2 3 4 . C 6 . � 2 7 + 7 0 >

F . C 8 . 9 + - + 3 . � 5 0 5 3 + / . 3 L K 3 A / B . , . 3 . 5 7 A ; 2 4 . 3 7 2 D 0 9 0 6 4 0 3 < C 8 . 9 � 5 0 4 0 / . 35 / 4 . 4 + , 7 0 L K 7 0 7 . 3 6 + 3 / F . 3 > � 0 0 / � 0 � 7 0 L K 7 0 7 . 3 4 2 � C 3 3 0 / . 3 + 8 0 6 + 3 � <8 9 . � + � 0 , / 0 6 4 0 . 6 . 3 3 . 3 2 3 4 0 / + 7 0 6 5 / 0 9 + E F . 5 3 + 9 2 + + 8 0 6 + 3 � 7 A ; 2 4 . 37 2 D 0 9 0 6 4 0 3 > � . / . C � 5 0 3 0 9 2 + / . 3 6 I / 0 9 . 3 6 . 3 2 3 4 0 / + 4 0 9 6 J 9 2 . . 5 7 0 B + 3 0 �

� 6 4 0 3 7 0 9 0 3 8 . 6 7 0 9 � + / . 3 � . , 4 + 9 . 5 4 9 + � 0 � + . 3 2 3 4 0 / + 7 0 - 2 / + , 0 � 0 9 - . / . C� 5 0 - . 6 4 + / . 3 . 3 6 I / 0 9 . 3 >

0 1 2 3 4 5 6 7 8 9 10 11 … 19 20 21 … 99 100 101 …

� . / . 3 � 4 0 / . 3 L K 3 A / B . , . 3 < � 5 + 6 7 . 5 / + , ; + 9 2 3 / . - T 0 ; + + � < 4 0 / . 3 7 0 D + � 0 9� K 0 � + 2 5 / > > > � � 0 6 + 0 3 - . , + 8 9 2 / J 9 2 + 3 � 6 . 3 4 2 � 0 3 3 0 / 0 6 3 2 6 + 7 . � 3 A / B . , . 3: K < L < N ? 3 0 9 2 + + / 0 3 / + - . 2 3 + � � 5 + 6 7 . . + , ; + 9 2 3 / . - T 0 ; + 3 3 0 + N 4 0 9 A + / . 3 7 0 D + � 0 9� K 0 � + 2 5 / > > > � < 8 0 , . � 5 0 . 3 6 I / 0 9 . 3 3 0 9 2 + / �

0 1 2 10 11 12 20 21 22 100 101 102 110 111 112 120

121 122 200 201 202 210 …

� - . 6 - 0 2 4 . C 0 1 + - 4 + / 0 6 4 0 . / 0 3 / . � 5 0 0 1 2 3 4 0 6 . 3 2 3 4 0 / + 7 0 - 2 / + , > � . 90 1 0 / 8 , . < . 6 I / 0 9 . L N L 6 + B + 3 0 4 9 3 4 0 / � 3 A / B . , . 3 / + 3 . 8 9 2 / 0 2 9 . L 4 0 / 5 /

Page 29: Introdução à Programação de Computadores em Java

� �

� + , . 9 7 2 D 0 9 0 6 4 0 7 . 3 0 ; 5 6 7 . L > � . / 5 / 3 2 3 4 0 / + 7 0 B + 3 0 � < . 8 0 3 . + 3 3 . - 2 + 7 . +- + 7 + + , ; + 9 2 3 / . C 5 / + 8 . 4 6 - 2 + 7 0 � > � 3 3 2 / �

121 (3) = 1*3 2 + 2*3 1 + 1*3 0

2 3 4 . C < . 6 I / 0 9 . L N L 6 + B + 3 0 � - . 9 9 0 3 8 . 6 7 0 + . 6 I / 0 9 . � � � � L Q L � 6 + B + 3 0 L K >

H / 7 . 3 8 9 2 / 0 2 9 . 3 3 2 3 4 0 / + 3 7 0 - . 6 4 + ; 0 / 8 . 7 0 3 0 9 � 2 3 4 . - . / . 5 / 3 2 3 4 0 / + 7 06 5 / 0 9 + E F . - . / + 8 0 6 + 3 5 / 3 A / B . , . � + 3 - . 2 3 + 3 - . 6 4 + � + / � 3 0 - . / 8 + 5 � 2 6 T . 3 > � 3- . / 8 5 4 + 7 . 9 0 3 5 4 2 , 2 � + / . 3 2 3 4 0 / + 7 0 6 5 / 0 9 + E F . B 2 6 J 9 2 . . 5 7 0 B + 3 0 N > � 03 0 ; 5 2 7 + + 8 9 0 3 0 6 4 + � 3 0 . 3 6 I / 0 9 . 3 7 0 K + N K 6 + B + 3 0 L K < B + 3 0 � < B + 3 0 N 0 6 + B + 3 0L >

base 10 base 3 base 2 base 1 (pauzinhos) 0 0 0 1 1 1 | 2 2 10 || 3 10 11 ||| 4 11 100 |||| 5 12 101 ||||| 6 20 110 |||||| 7 21 111 ||||||| 8 22 1000 |||||||| 9 100 1001 ||||||||| 10 101 1010 |||||||||| 11 102 1011 ||||||||||| 12 110 1100 |||||||||||| 13 111 1101 ||||||||||||| 14 112 1110 |||||||||||||| 15 120 1111 ||||||||||||||| 16 121 10000 |||||||||||||||| 17 122 10001 ||||||||||||||||| 18 200 10010 |||||||||||||||||| 19 201 10011 ||||||||||||||||||| 20 202 10100 ||||||||||||||||||||

� % & % % * D ( 5 + 0 0 # 0 3 - ( % 0 H # " 1 & # + - 5 - $ # ( % * . + ' 3 & + 0 0 # 0 3 - ( % 0 $ + ( # " 3 - & - 0 0 - 0 P + + 00 # 0 3 - ( % + $ 3 % * �H % 0 - � > � - + 7 - G % 5 - $ # ( % * �H % 0 - � � � > � � . 2 + & 2 - & ( # 3 # & - ($ + " ) - & 0 � - 0 # ( - 5 # % 3 % 0 5 - - 2 % & % + 0 # 0 3 - ( % H # " 1 & # + I 0 $ + " ) - & 0 � - 0 5 - H # " 1 & # + 2 % & % + $ 3 % * 0 P + L - # 3 % 0 L % , - " 5 + ? & ' 2 + 0 5 - B H # 3 0 5 % 5 # & - # 3 %2 % & % % - 0 / ' - & 5 % . - 0 ' H 0 3 # 3 ' # " 5 + $ % 5 % ? & ' 2 + 2 - * + 0 � ( H + * + + $ 3 % * $ + & & - 0 2 + " 5 - " 3 - I 0 0 # ( � � � � � � � � � � � O � �

��

M ( 7 - G % 5 - $ # ( % * . + 2 & + $ - 0 0 + D # 5 " 3 # $ + I 4 " # $ % 5 # L - & - " � % D / ' - - ( ) - , 5 - ? & ' 2 + 05 - B H # 3 0 ' 0 % ( � 0 - ? & ' 2 + 0 5 - J I 0 0 # ( � � � � � � � � � � � � � � � � � � � � � � � > � � � �

Page 30: Introdução à Programação de Computadores em Java

� �

� � � � � � � � � � �� ! � � � � � � � $ � � � � �� + 5 - ( + 0 % ? + & % ) + * 3 % & % + " + 0 0 + $ + ( 2 ' 3 % 5 + & 5 - 3 & 0 H # 3 0 � 1 ) # ( + 0 / ' - $ + ( 3 & 0H # 3 0 2 + 5 - ( + 0 & - 2 & - 0 - " 3 % & " 4 ( - & + 0 5 # L - & - " 3 - 0 � % 0 / ' - " 4 ( - & + 0 0 P + - 0 0 - 0 �� + ( + 2 + 5 - ( + 0 ) - & " % $ + * ' " % 5 % H % 0 - > . $ + ( % 2 - " % 0 B H # 3 0 2 % & % & - 2 & - 0 - " 3 % &# " 3 - # & + 0 - ( H # " 1 & # + " % 3 ' & % * . % 0 / ' % " 3 # 5 % 5 - 0 & - 2 & - 0 - " 3 % 5 % 0 $ + ( - � % ( - ( � - ) P + % 3 D> � � � � M 0 3 - 0 0 P + + 0 * # ( # 3 - 0 5 - ) % & # % � P + . + ' % ? % ( % 5 - ) % * + & - 0 2 + 0 0 � ) - # 0 . 2 % & %# " 3 - # & + 0 0 - ( 0 # " % * 5 - B H # 3 0 � + ( H # 3 0 % ? % ( % 5 - ) % * + & - 0 0 - & # % 5 - � % > � � � � > O O M$ + ( n H # 3 0 . / ' % # 0 0 - & # % ( + 0 * # ( # 3 - 0 5 - ) % & # % � P + �

� / ' - ) # ( + 0 D ) 1 * # 5 + 2 % & % # " 3 - # & + 0 0 - ( 0 # " % * I & - 2 & - 0 - " 3 % � P + 5 - # " 3 - # & + 0 $ + (0 # " % * D L - # 3 % ' 0 % " 5 + % / ' # * + % / ' - 0 - $ 7 % ( % & - 2 & - 0 - " 3 % � P + - ( $ + ( 2 * - ( - " 3 + 2 % & % >

� + * 3 - ( + 0 % + " + 0 0 + $ + ( 2 # * % 5 + & 5 - B H # 3 0 � 0 ) % * + & - 0 2 + 0 0 � ) - # 0 2 % & % - 0 0 - 0 3 & 0 H # 3 0$ + " 3 # " ' % ( % 0 - & + 0 ( - 0 ( + 0 � � � � . � � � . � � � . � � � . � � � . � � � . � � � - � � � M ($ + ( 2 * - ( - " 3 + 2 % & % > . + H # 3 ( % # 0 � - 0 / ' - & 5 % " + " 4 ( - & + � + ' + H # 3 ( % # 00 # ? " # L # $ % 3 # ) + � D ' 0 % 5 + 2 % & % # " 5 # $ % & + 0 # " % * 5 + " 4 ( - & + K - - 0 0 - H # 3 L + & � - 0 3 % ( + 0 " %2 & - 0 - " � % 5 - ' ( " 4 ( - & + 2 + 0 # 3 # ) + 6 0 - - 0 0 - H # 3 L + & � 3 - & - ( + 0 ' ( " 4 ( - & + " - ? % 3 # ) +

� 4 ( - & + 0 2 + 0 # 3 # ) + 0 $ + ( - � % ( 2 + & � - + 0 & - 0 3 % " 3 - 0 H # 3 0 & - 2 & - 0 - " 3 % ( + ) % * + &% H 0 + * ' 3 + 5 + " 4 ( - & + � 4 ( - & + 0 " - ? % 3 # ) + 0 $ + ( - � % ( 2 + & � . 0 - " 5 + + 0 - ' ) % * + &% H 0 + * ' 3 + 5 % 5 + 2 - * % 5 # L - & - " � % - " 3 & - % / ' % " 3 # 5 % 5 - 5 - " 4 ( - & + 0 / ' - 0 - $ + " 0 - ? ' - (& - 2 & - 0 - " 3 % & $ + ( + 0 & - 0 3 % " 3 - 0 5 � ? # 3 + 0 - + ) % * + & - ( H # " 1 & # + " % 3 ' & % * & - 2 & - 0 - " 3 % 5 +2 - * + 0 5 � ? # 3 + 0 & - 0 3 % " 3 - 0

� � � � � � � � � � �

� � � � �� � � � �� � � � >� � � � B� � � � J � � � J� � � � J � � � B� � � � J � > � >� � � � J � B � �

Page 31: Introdução à Programação de Computadores em Java

� �

I 0 0 # ( . - ( H + & % ' ( # " 3 - # & + $ + ( 0 # " % * . & - 2 & - 0 - " 3 % 5 + ' 0 % " 5 + B H # 3 0 . 3 - " 7 % % # " 5 %> � ) % * + & - 0 2 + 0 0 � ) - # 0 . + 0 0 - ' 0 * # ( # 3 - 0 5 - ) % & # % � P + 0 P + � � � > �

� � � J - > �� � � B

K - 3 # ) - & ( + 0 H # 3 0 - " 3 P + % ? % ( % 5 - ) % & # % � P + ) % # 5 - � � > � � � � � > % > � � � � � > �

� + $ % 0 + ? - & % * . ' ( # " 3 - # & + ' 0 % " 5 + n H # 3 0 3 - & 1 > n ) % * + & - 0 5 # L - & - " 3 - 0 - 3 - & 1 % 00 - ? ' # " 3 - 0 ? % ( % 0 5 - ) % & # % � P + �

− K - ( 0 # " % * � � % > � � �

− � + ( 0 # " % * � � � > � �

�� % > � �

�� �

� � � � � $ � � � �� 3 - + 9 + - 4 0 9 0 3 � + � < �B � < � - � < > > > < �� � < �� � < �� < > > > < �� � < � � � < � � < > > > - . 3 4 5 / + � + / 3 0 99 0 8 9 0 3 0 6 4 + 7 . 3 2 6 4 0 9 6 + / 0 6 4 0 6 . 3 - . / 8 5 4 + 7 . 9 0 3 5 3 + 6 7 . . - � 7 2 ; . � � � � �

:� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ? > 0 3 4 0 - � 7 2 ; . < - + 7 +- + 9 + - 4 0 9 C - . 7 2 D 2 - + 7 . 5 3 + 6 7 . M 7 A ; 2 4 . 3 B 2 6 J 9 2 . 3 > � 0 3 0 ; 5 2 7 + < + 8 9 0 3 0 6 4 + � 3 0 .- � 7 2 ; . 7 0 + , ; 5 6 3 - + 9 + - 4 0 9 0 3 �

código código

caracter decimal binário

-------- ------- ---------

. . .

. . .

. . .

# 35 00100011

$ 36 00100100

% 37 00100101

& 38 00100110

' 39 00100111

( 40 00101000

) 41 00101001

* 42 00101010

+ 43 00101011

, 44 00101100

- 45 00101101

. 46 00101110

Page 32: Introdução à Programação de Computadores em Java

� �

/ 47 00101111

0 48 00110000

1 49 00110001

2 50 00110010

3 51 00110011

. . .

. . .

. . .

A 65 01000001

B 66 01000010

C 67 01000011

. . .

. . .

. . .

a 97 01100001

b 98 01100010

c 99 01100011

. . .

. . .

. . .

� . / . � 2 / . 3 + 6 4 0 3 < - . / M B 2 4 3 8 . 7 0 / . 3 9 0 8 9 0 3 0 6 4 + 9 N � Q N � � - + 9 + - 4 0 9 0 37 2 D 0 9 0 6 4 0 3 >

� 3 , 2 6 ; 5 + ; 0 6 3 7 0 8 9 . ; 9 + / + E F . + - 4 5 + 2 3 5 3 + / . 5 6 2 - . 7 0 � � > � 5 6 2 - . 7 0 C 5 /- � 7 2 ; . � 5 0 0 / � 0 � 7 0 M 5 3 + L � B 2 4 3 8 + 9 + 9 0 8 9 0 3 0 6 4 + 9 5 / - + 9 + - 4 0 9 > � . / L � B 2 4 3 .5 6 2 - . 7 0 9 0 8 9 0 3 0 6 4 + � � � � � - + 9 + - 4 0 9 0 3 7 2 D 0 9 0 6 4 0 3 < . � 5 0 7 J 8 + 9 + 9 0 8 9 0 3 0 6 4 + 98 9 + 4 2 - + / 0 6 4 0 4 . 7 . 3 . 3 - + 9 + - 4 0 9 0 3 7 . 3 7 2 D 0 9 0 6 4 0 3 + , D + B 0 4 . 3 0 1 2 3 4 0 6 4 0 3+ - 4 5 + , / 0 6 4 0 >

� � ! � � � $ � � � � � � � � � �� + ( + ) # ( + 0 . % ( - 0 ( % 0 - / ' " $ # % 5 - H # 3 0 2 + 5 - & - 2 & - 0 - " 3 % & ) % * + & - 0 ( ' # 3 +5 # L - & - " 3 - 0 . $ + " 0 + % " 3 - 0 - 3 & % 3 - 5 - # " 3 - # & + 0 $ + ( + ' 0 - ( 0 # " % * . $ % & % $ 3 - & - 0 + ' + ' 3 & + 0� �� = @ � ; � A � = @

Page 33: Introdução à Programação de Computadores em Java

� �

M 0 3 % D % 2 - " % 0 ' ( % 5 % 0 & % , � - 0 # " 3 & + 5 ' , # & ( + 0 % " + � P + 5 - 3 # 2 + 5 - 5 % 5 + 0 � ' 3 & % 0& % , � - 0 . 3 % * ) - , % 3 D ( % # 0 # ( 2 + & 3 % " 3 - 0 . 0 - & P + % 2 & - 0 - " 3 % 5 % 0 ( % # 0 3 % & 5 -

N + 5 % 0 % 0 * # " ? ' % ? - " 0 5 - 2 & + ? & % ( % � P + % $ 3 ' % # 0 2 & + 2 + & $ # + " % ( 2 - * + ( - " + 0 ' ($ + " � ' " 3 + ( � " # ( + 5 - 3 # 2 + 0 5 - 5 % 5 + 0 2 & D � 5 - L # " # 5 + 0 . % 0 0 # ( $ + ( + % $ % 2 % $ # 5 % 5 - 5 -$ + " 0 3 & ' # & " + ) + 0 3 # 2 + 0 . + ' 3 # 2 + 0 5 - L # " # 5 + 0 2 - * + ' 3 # * # , % 5 + & � % 0 % L # " % * + / ' - D ' (3 # 2 + 5 - 5 % 5 + 0 �

� � � � ! � � � � � � ( 3 # 2 + 5 - 5 % 5 + 0 D ' ( $ + " � ' " 3 + 5 - ) % * + & - 0 - ' ( % $ + * - $ � P + 5 -+ 2 - & % � � - 0 0 + H & - - 0 0 - 0 ) % * + & - 0

� � � � � � � � � 3 # 2 + 5 - 5 % 5 + 0 int $ + " 0 # 0 3 - 5 + 0 - ? ' # " 3 - $ + " � ' " 3 + 5 - ) % * + & - 0� � . � � . � � . � > . � > . . ! � N � � I . ! � N � � ! �

+ " 5 - ! � N � � I - ! � N � � ! � & - 2 & - 0 - " 3 % ( + 0 * # ( # 3 - 0 0 ' 2 - & # + & - # " L - & # + & 5 % ? % ( %5 - ) % & # % � P + 5 + 0 # " 3 - # & + 0 I 0 + 2 - & % � � - 0 0 + H & - + 0 int 0 P + ( ' # 3 % 0 - # " $ * ' - ( + 0+ 2 - & % 5 + & - 0 % & # 3 ( D 3 # $ + 0 +, -, * e / . 3 - 0 3 - 5 - # ? ' % * 5 % 5 - - 5 - 0 # ? ' % * 5 % 5 - . + 2 - & % � � - 0 5 -% 3 & # H ' # � P + . - 3 $

� � � � � � � � �

� � ' % * D + ) % * + & & - 2 & - 0 - " 3 % 5 + 2 + & � � � � � � � �

>

� + ( + & - 2 & - 0 - " 3 % & � O - ( H # " 1 & # + " % 3 ' & % * � M - ( + $ 3 % * � M - ( 7 - G % 5 - $ # ( % * �B

� ' % * D + ) % * + & & - 2 & - 0 - " 3 % 5 + 2 + & � � � � �� � M 0 - + " 4 ( - & + - 0 3 # ) - 0 0 - " % H % 0 -

� � �J

I 0 - / ' " $ # % H # " 1 & # % � � � � $ + 5 # L # $ % ' ( # " 3 - # & + $ + ( 0 # " % * � ' - # " 3 - # & +& - 2 & - 0 - " 3 % �

O � ' % * D + " 4 ( - & + ( � " # ( + 5 - H # 3 0 " - $ - 0 0 1 & # + 2 % & % ? ' % & 5 % & � ) % * + & - 0

5 # L - & - " 3 - 0 �

Page 34: Introdução à Programação de Computadores em Java

� �

Primeiros programas � �� � � � � � � � � � � � � � � �� � � � � � �� � � � � � � � � � � � � � � � � � � �� � �� � � �� � � � � � � � � � � � � � � ��� � � �� � � � � � � � � � � � � � �� � � � � � � � �� � � � ��� � � � � � � � � � � � � � � � � � �� � � � � � � � � � � � � � � � � � �� � � �� �� � � � � � � � � � � � � � � � � � � � � � �� � �

8 9 . ; 9 + / + 3 0 ; 5 2 6 4 0 0 3 4 J 0 3 - 9 2 4 . 6 + , 2 6 ; 5 + ; 0 / 7 0 8 9 . ; 9 + / + E F . � + � + >

public class PrimeiroPrograma { public static void main(String[] args) {

System.out.print("Primeiro programa em Java."); } }

� . 3 0 9 0 1 0 - 5 4 + 7 . < . 8 9 . ; 9 + / + 0 3 - 9 0 � 0 . 3 0 ; 5 2 6 4 0 6 . 0 - 9 F �

Primeiro programa em Java.

� + ( + D / ' - 2 + 5 - ( + 0 $ + " L # & ( % & # 0 0 + � � ( % 5 % 0 L + & ( % 0 ( % # 0 0 # ( 2 * - 0 $ + " 0 # 0 3 -- ( �

� $ + 2 # % & + 2 & + ? & % ( % 2 % & % ' ( - 5 # 3 + & 5 - 3 - G 3 + - ? & % ) % & + L # $ 7 - # & +

$ + & & - 0 2 + " 5 - " 3 - $ + ( + " + ( - PrimeiroPrograma.java � + & & % , � - 0 / ' - 0 -3 + & " % & % ( $ * % & % 0 ( % # 0 � L & - " 3 - . D " - 0 3 % L % 0 - ( ' # 3 + # ( 2 + & 3 % " 3 - & - 2 & + 5 ' , # &; � A � � A : ; 8 � ; + / ' - - 0 3 1 - 0 $ & # 3 + � + & - G - ( 2 * + . D 2 & + # H # 5 + 3 & + $ % & ( # " 4 0 $ ' * % 0 2 + &( % # 4 0 $ ' * % 0 - ) # $ - � ) - & 0 %

> Q - 2 + # 0 3 - & - ( + 0 5 - $ + ( 2 # * % & + 2 & + ? & % ( % ' 0 % " 5 + + $ + ( 2 # * % 5 + & 5 - � % ) % . +

javac � % & % # 0 0 + . - G - $ ' 3 % � 0 - " % * # " 7 % 5 - $ + ( % " 5 + 0 �

W X Y Z[ \ ]^

IV

O

Page 35: Introdução à Programação de Computadores em Java

� �

>javac PrimeiroPrograma.java

� + ( + & - 0 ' * 3 % 5 + . + $ + ( 2 # * % 5 + & ? - & % & 1 + L # $ 7 - # & + PrimeiroPrograma.class / ' -$ + " 3 D ( $ F 5 # ? + - G - $ ' 3 1 ) - * 2 - * % ( 1 / ' # " % ) # & 3 ' % * 5 + � % ) % � $ F 5 # ? + - G - $ ' 3 1 ) - *L # $ % & 1 ? ' % & 5 % 5 + " + L # $ 7 - # & + PrimeiroPrograma.class

B � # " % * ( - " 3 - - G - $ ' 3 % � 0 - + 2 & + ? & % ( % . $ 7 % ( % " 5 + % ( 1 / ' # " % ) # & 3 ' % * $ + ( +

" + ( - 5 + " + 0 0 + L # $ 7 - # & + � L & - " 3 - ! 0 3 + D . " % * # " 7 % 5 - $ + ( % " 5 + 0 - 0 $ & - ) - � 0 - �

>java PrimeiroPrograma

� � � � � � � � � � � � � � �� � � � � � � � � � � �

+ 6 . 3 3 + 3 . - 2 0 7 + 7 0 < . 0 6 ; 0 6 T 0 2 9 . 8 9 . � 0 - 4 + < . / C 7 2 - . - 5 9 + 0 . 8 9 . D 0 3 3 . 90 1 8 , 2 - + > � + 7 + 5 / + 7 0 3 4 + 3 + - 4 2 � 2 7 + 7 0 3 C 7 + 9 0 3 8 . 6 3 + B 2 , 2 7 + 7 0 7 0 5 / + 8 9 . D 2 3 3 F .8 + 9 4 2 - 5 , + 9 > � + / 0 3 / + D . 9 / + < 6 5 / + , 2 6 ; 5 + ; 0 / 7 0 8 9 . ; 9 + / + E F . . 9 2 0 6 4 + 7 + 8 . 9. B � 0 - 4 . 3 < - . / . . � + � + < - + 7 + + - 4 2 � 2 7 + 7 0 7 0 � 0 3 0 9 7 + 9 0 3 8 . 6 3 + B 2 , 2 7 + 7 0 7 0 5 / + � � >

� . 9 0 1 0 / 8 , . < + 3 D 5 6 E 0 3 / + 4 0 / J 4 2 - + 3 < - . / . + 3 D 5 6 E 0 3 4 9 2 ; 6 . / C 4 9 2 - + 3 0, . ; + 9 A 4 / 2 - + 3 < 3 F . 4 . 7 + 3 7 + 9 0 3 8 . 6 3 + B 2 , 2 7 + 7 0 7 + - , + 3 3 0

Math> � 0 � 5 2 3 0 9 / . 3 5 3 + 9

5 / + 7 0 3 4 + 3 D 5 6 E 0 3 < 8 . 9 0 1 0 / 8 , . 8 + 9 + - + , - 5 , + 9 + 9 + 2 � � 5 + 7 9 + 7 + 7 0 N <0 3 - 9 0 � 0 / . 3

Math.sqrt(2).� 3 9 0 3 4 + 6 4 0 3 D 5 6 E 0 3 4 / . 3 6 . / 0 3 T + B 2 4 5 + 2 3 < - . / .

abs<

cos, log, log10 . 5

sin< 8 + 9 + � + , . 9 + B 3 . , 5 4 . < - . 3 0 6 . < , . ; + 9 2 4 / . 6 0 8 9 0 + 6 . <

, . ; + 9 2 4 / . 7 0 B + 3 0 L K < . 5 3 0 6 . 7 0 5 / 6 I / 0 9 . < 9 0 3 8 0 - 4 2 � + / 0 6 4 0 > � 3 6 I / 0 9 . 32 9 9 + - 2 . 6 + 2 3

π0

e4 + / B C / 8 . 7 0 / 3 0 9 0 6 - . 6 4 9 + 7 . 3 6 0 3 4 + - , + 3 3 0 0 8 . 7 0 9 F . 3 0 9

5 3 + 7 . 3 0 3 - 9 0 � 0 6 7 .Math

>PI

0Math

>E< 9 0 3 8 0 - 4 2 � + / 0 6 4 0 >

� / 4 0 9 / . 3 ; 0 9 + 2 3 < 5 / + - , + 3 3 0 8 . 7 0 3 0 9 � 2 3 4 + - . / . 5 / / 0 - + 6 2 3 / . � 5 0 8 0 9 / 2 4 0+ . 8 9 . ; 9 + / + 7 . 9 - 9 2 + 9 5 / 6 . � . 4 2 8 . 7 0 7 + 7 . 3 > � 0 6 7 . + 6 . E F . 7 0 - , + 3 3 0 5 / +6 . E F . - 0 6 4 9 + , 0 / � 9 . ; 9 + / + E F . � 9 2 0 6 4 + 7 + 8 . 9 � B � 0 - 4 . 3 < 2 9 0 / . 3 4 0 9. 8 . 9 4 5 6 2 7 + 7 0 7 0 < / + 2 3 � D 9 0 6 4 0 < + 8 9 . D 5 6 7 + 9 0 3 4 + 6 . E F . >

Page 36: Introdução à Programação de Computadores em Java

� �

� . 3 4 . 2 3 4 . < 6 F . C 8 . 9 4 + 6 4 . 7 0 0 3 4 9 + 6 T + 9 � 5 0 6 . 6 . 3 3 . 8 9 2 / 0 2 9 . 0 1 0 / 8 , . 7 08 9 . ; 9 + / + < 4 2 � C 3 3 0 / . 3 7 0 D 2 6 2 7 . 5 / + - , + 3 3 0 - T + / + 7 +

PrimeiroPrograma� 5 0 D . 3 3 0

9 0 3 8 . 6 3 J � 0 , 8 . 9 0 3 - 9 0 � 0 9 + 6 . 3 3 + / 0 6 3 + ; 0 / > � 8 + , + � 9 +public

0 3 8 0 - 2 D 2 - + +� � � � � � � � � � 7 + - , + 3 3 0 > � 9 . 3 3 . / . 7 . < 2 6 7 2 - + � 5 0 / 8 . 7 0 9 J 5 3 + 9 + - , + 3 3 0 >

0 3 4 0 / . / 0 6 4 . < 2 6 4 0 9 0 3 3 0 9 0 4 0 9 � 5 0 + 0 1 8 9 0 3 3 F .

public static void main(String[] args)

2 7 0 6 4 2 D 2 - + . 8 9 . ; 9 + / + 8 9 2 6 - 2 8 + , > � + � 5 2 � 5 0 + 0 1 0 - 5 E F . 7 . 8 9 . ; 9 + / + - . / 0 E + <� 5 + 6 7 . . / + 6 7 + / . 3 0 1 0 - 5 4 + 9 > � . 9 . 5 4 9 + 3 8 + , + � 9 + 3 < + / J � 5 2 6 + � 2 9 4 5 + , � + � +8 9 . - 5 9 + 8 . 9

main6 + - , + 3 3 0 - . / . / 0 3 / . 6 . / 0 7 . D 2 - T 0 2 9 . . 6 7 0 0 3 - 9 0 � 0 / . 3 .

8 9 . ; 9 + / + > � 0 8 . 2 3 7 2 3 4 . < + 0 1 0 - 5 E F . - . 6 4 2 6 5 + + 8 + 9 4 2 9 7 + 8 9 2 / 0 2 9 + 2 6 3 4 9 5 E F . 7 0

main> � �

� 3 - T + � 0 4 + 3{0

}< + 3 3 2 6 + , + / . 2 6 A - 2 . 0 . D 2 / 7 0 5 / � � � � 7 0 2 6 3 4 9 5 E 0 3 > 0 3 4 0

8 9 . ; 9 + / + 3 0 9 � 0 / 8 + 9 + 2 6 7 2 - + 9 . 6 7 0 - . / 0 E + 0 + - + B + + - , + 3 3 0 < + 3 3 2 / - . / . . 6 7 0- . / 0 E + 0 + - + B + . 8 9 . ; 9 + / + 8 9 2 6 - 2 8 + , >

� 3 4 J B 0 / 7 0 � 0 9 � 5 0 C + 2 6 3 4 9 5 E F .

System.out.print("Primeiro programa em Java.");

� 5 0 0 3 - 9 0 � 0 + � � � � � � � � � � "Primeiro programa em Java."

6 . 0 - 9 F >

� � � � � � � � � � � � � �

. 6 . 3 3 . 3 0 ; 5 6 7 . 8 9 . ; 9 + / + 0 / � + � + � + / . 3 7 0 - , + 9 + 9 < 2 6 2 - 2 + 9 0 0 3 - 9 0 � 0 9 6 . 0 - 9 F5 / + � + 9 2 J � 0 , 7 . 4 2 8 . 2 6 4 0 2 9 . >

public class SegundoPrograma {

public static void main(String [] args) {

int i=2;

System.out.print("Programa No " + i + " em Java.");

}

}

Page 37: Introdução à Programação de Computadores em Java

� �

� - & # L # / ' - + / ' - - 0 3 - 2 & + ? & % ( % - 0 $ & - ) - " + - $ & P

M 0 3 - 2 & + ? & % ( % � 1 $ + ( - � % % % 2 & - 0 - " 3 % & ' ( % - 0 3 & ' 3 ' & % 3 � 2 # $ % � + 2 & + ? & % ( % 2 & # " $ # 2 % *$ + ( - � % & 2 + & 5 - $ * % & % & - # " # $ # % & % ) % & # 1 ) - * i . 0 - ? ' # " 5 + � 0 - 5 - 2 + # 0 % # " 0 3 & ' � P + 5 -- 0 $ & # 3 %

Q % ( - 0 ( % L + & ( % / ' - % 0 + & % � � - 0 - ( � + & 3 ' ? ' 0 3 - & ( # " % ( $ + ( ' ( 2 + " 3 + L # " % * .3 + 5 % 0 % 0 # " 0 3 & ' � � - 0 3 - & ( # " % ( $ + ( 2 + " 3 + - ) � & ? ' * % �;� � + & - 0 3 - ( + 3 # ) + - 0 3 - $ % & 1 $ 3 - &$ 7 % ( % � 0 - + $ % & 1 $ 3 - & 3 - & ( # " % 5 + &

� 7 0 - , + 9 + E F . 7 0 5 / + � + 9 2 J � 0 , C D 0 2 4 + 3 0 / 8 9 0 - . / . 2 6 7 2 - + 7 . + - 2 / + � 8 9 2 / 0 2 9 . .4 2 8 . :

int? < 7 0 8 . 2 3 . 6 . / 0 7 + � + 9 2 J � 0 , :

i? < 3 0 ; 5 0 � 3 0 . 4 0 9 / 2 6 + 7 . 9 :

;? . 5 5 / +

2 6 2 - 2 + , 2 � + E F . < - . / . 6 . 0 1 0 / 8 , . > � . 3 6 . / 0 3 7 + 3 � + 9 2 J � 0 2 3 4 + / B C / 3 0 - T + / + /2 7 0 6 4 2 D 2 - + 7 . 9 0 3 >

C - 2 % & - � 0 - % # " 5 % $ + ( + + + 3 + & " % 2 + 0 0 � ) - * � ' " 3 % & $ % 5 - # % 0 5 - $ % & % $ 3 - & - 0 - ) % * + & - 0 5 -) % & # 1 ) - # 0

� � � � � � � �� � � �� � � � � � � � �M ( � % ) % - G # 0 3 - ( 3 # 2 + 0 2 & # ( # 3 # ) + 0 � + ' - * - ( - " 3 % & - 0 � 5 - 5 % 5 + 0 � byte. short . int . long.float . double. char - boolean.

� % & % ? ' % & 5 % & ( + 0 # " 3 - # & + 0 3 - ( + 0 + byte. short . int - long. - 0 3 % " 5 + % 5 # L - & - " � % " +" 4 ( - & + 5 - H � 3 - 0 5 # 0 2 + " � ) - # 0 2 % & % % & ( % , - " % ( - " 3 + � � . > . J - H � 3 - 0 .& - 0 2 - $ 3 # ) % ( - " 3 - � % & % ? ' % & 5 % & ( + 0 & - % # 0 . 3 - ( + 0 + float - + double6 0 - " 5 + 3 % ( H D (% / ' # % 5 # L - & - " � % " + " 4 ( - & + 5 - H � 3 - 0 5 # 0 2 + " � ) - # 0 2 % & % $ % 5 % 3 # 2 + � J - H � 3 - 0 .& - 0 2 - $ 3 # ) % ( - " 3 - � 3 # 2 + char ? ' % & 5 % $ % & % $ 3 - & - 0 � + 5 - ( + 0 & - L - & # & � " + 0 % + $ % & 1 $ 3 - & a

- 0 $ & - ) - " 5 +

char c = ‘a’;

Page 38: Introdução à Programação de Computadores em Java

� �

� # " % * ( - " 3 - . 3 - ( + 0 + 3 # 2 + boolean / ' - ? ' % & 5 % ) % * + & - 0 * F ? # $ + 0 . � ; . true - false

� + ( + 0 F / ' - & - ( + 0 5 # 0 3 # " ? ' # & - " 3 & - 5 + # 0 ) % * + & - 0 2 + 0 0 � ) - # 0 . - " 3 P + % 0 ) % & # 1 ) - # 0 5 +3 # 2 + boolean ' 0 % ( % 2 - " % 0 ' ( H # 3

I 5 - $ * % & % � P + 5 - ) % & # 1 ) - # 0 5 - / ' % * / ' - & ' ( 5 - 0 3 - 0 3 # 2 + 0 D L - # 3 % 0 - ( 2 & - $ + ( +# " 5 # $ % 5 + " + 2 & + ? & % ( % % $ # ( %

I 0 2 % * % ) & % 0 byte. short . int . long. float . double. char, boolean, true - false 0 P + . 3 + 5 % 0- * % 0 2 % * % ) & % 0 & - 0 - & ) % 5 % 0 . � ; . + 0 - ' 0 # ? " # L # $ % 5 + " P + 2 + 5 - % * 3 - & % 5 + � + & - G - ( 2 * + ." P + 2 + 5 - & - ( + 0 5 % & + " + ( - byte % ' ( % ) % & # 1 ) - * 6 # 0 0 + 0 - & # % % 0 0 # " % * % 5 + $ + ( + ' (- & & +

� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �� + 9 + - . / 8 9 0 0 6 7 0 9 / . 3 - . / 8 , 0 4 + / 0 6 4 0 . � 5 0 3 2 ; 6 2 D 2 - + 5 / + � + 9 2 J � 0 , 0 /8 9 . ; 9 + / + E F . 0 � 0 9 / . 3 / + 2 3 + , ; 5 6 3 + 3 8 0 - 4 . 3 0 , 0 / 0 6 4 + 9 0 3 7 . � + � + � + / . 30 3 - 9 0 � 0 9 5 / 8 9 . ; 9 + / + � 5 0 3 . / 0 7 . 2 3 2 6 4 0 2 9 . 3 >

public class Soma2int {

public static void main(String[] args) {

int a, b, s;

a=7; b=18;

s=a+b;

System.out.print(a + " + " + b + " = " + s );

}

}

� . 3 0 9 0 1 0 - 5 4 + 7 . < . 8 9 . ; 9 + / + � + 2 8 9 . 7 5 � 2 9 . 3 0 ; 5 2 6 4 0 9 0 3 5 , 4 + 7 . �7 + 8 = 25

>� 0 9 2 D 2 � 5 0 �

� � � � � � � � � � � � � � 8 9 . ; 9 + / + 8 9 2 6 - 2 8 + , - . / 0 E + 8 . 9 7 0 - , + 9 + 9 4 9 3 � + 9 2 J � 0 2 3 7 . 4 2 8 . 2 6 4 0 2 9 . �

int a, b, s;

Page 39: Introdução à Programação de Computadores em Java

� �

� . 7 0 / . 3 8 0 6 3 + 9 6 5 / + � + 9 2 J � 0 , - . / . 3 0 D . 3 3 0 5 / + - + 2 1 + . 6 7 0 3 0 8 . 7 0 ; 5 + 9 7 + 95 / � + , . 9 >

� . 3 0 9 7 0 - , + 9 + 7 + < - + 7 + � + 9 2 J � 0 , 9 0 3 0 9 � + 8 + 9 + 3 2 0 3 8 + E . 6 + / 0 / � 9 2 + 7 .- . / 8 5 4 + 7 . 9 < . 6 7 0 2 9 J ; 5 + 9 7 + 9 . 3 3 0 5 3 � + , . 9 0 3 > � + 7 + � + 9 2 J � 0 , 4 0 / 5 / 4 2 8 . 7 07 + 7 . 3 + 3 3 . - 2 + 7 . > � . / . � 2 / . 3 < C . 4 2 8 . � 5 0 � + 2 7 0 4 0 9 / 2 6 + 9 + � 5 + 6 4 2 7 + 7 0 7 0/ 0 / � 9 2 + 9 0 3 0 9 � + 7 + 8 + 9 + + � + 9 2 J � 0 , >

� 0 8 . 2 3 7 + 7 0 - , + 9 + E F . 7 + 3 � + 9 2 J � 0 2 3 < . 8 9 . ; 9 + / + 4 0 / R 2 6 3 4 9 5 E 0 3 � 5 0 3 F .0 1 0 - 5 4 + 7 + 3 3 0 � 5 0 6 - 2 + , / 0 6 4 0 < 5 / + + 8 � 3 . 5 4 9 + > � 0 8 . 2 3 7 0 0 1 0 - 5 4 + 7 + + 8 9 2 / 0 2 9 +7 0 3 3 + 3 2 6 3 4 9 5 E 0 3 < . 0 3 4 + 7 . 7 + 3 � + 9 2 J � 0 2 3 8 + 3 3 + + 3 0 9 �

0 7 0 8 . 2 3 7 + 3 0 ; 5 6 7 + 3 0 9 J �

� 4 0 9 - 0 2 9 + 7 0 3 3 + 3 2 6 3 4 9 5 E 0 3 C 5 / + � � � � � � � � � � � � � � � � � � � �

s = a + b;

0 3 4 0 4 2 8 . 7 0 2 6 3 4 9 5 E F . < + � 5 2 , . � 5 0 0 3 4 J 6 . , + 7 . 0 3 � 5 0 9 7 . 7 . 3 2 6 + , 7 0 2 ; 5 + , C3 0 / 8 9 0 5 / + � + 9 2 J � 0 , > � � 5 2 , . � 5 0 0 3 4 J 7 . , + 7 . 7 2 9 0 2 4 . 7 . 3 2 6 + , 7 0 2 ; 5 + , C 5 / +0 1 8 9 0 3 3 F . > � . 0 6 - . 6 4 9 + 9 0 3 4 0 4 2 8 . 7 0 2 6 3 4 9 5 E F . < . - . / 8 5 4 + 7 . 9 0 D 0 - 4 5 + . - J , - 5 , .7 + 0 1 8 9 0 3 3 F . 7 . , + 7 . 7 2 9 0 2 4 . :

a + b? 0 - . , . - + . 9 0 3 5 , 4 + 7 . 7 0 6 4 9 . 7 + � + 9 2 J � 0 ,

Page 40: Introdução à Programação de Computadores em Java

� �

� 5 0 0 3 4 J 6 . , + 7 . 0 3 � 5 0 9 7 . :s? > � . 9 . 5 4 9 + 3 8 + , + � 9 + 3 < + 4 9 2 B 5 2 � 3 0 � � + 9 2 J � 0 ,

s.

� + , . 9 7 0a + b

>

� 8 � 3 + 2 6 3 4 9 5 E F . 7 0 + 4 9 2 B 5 2 E F . . 0 3 4 + 7 . 7 + 3 � + 9 2 J � 0 2 3 C �

� I , 4 2 / + 2 6 3 4 9 5 E F . 7 . 8 9 . ; 9 + / + C 5 / + . 8 0 9 + E F . 7 0 0 3 - 9 2 4 + < - . / . . 5 4 9 + 3 � 5 0 � J� 2 / . 3 + 6 4 0 9 2 . 9 / 0 6 4 0 >

� 8 9 . ; 9 + / + + - 2 / + 3 . / + N 6 I / 0 9 . 3 2 6 4 0 2 9 . 3 > � 0 . 5 4 2 , 2 � + 7 . 9 2 6 4 9 . 7 5 � 2 9 5 /6 I / 0 9 . 9 0 + , < 8 . 9 0 1 0 / 8 , .

3.7< . 8 9 . ; 9 + / + 6 F . � + 2 4 0 9 . - . / 8 . 9 4 + / 0 6 4 .

0 3 8 0 9 + 7 . > � 5 0 + , 4 0 9 + E 0 3 4 0 9 A + / . 3 � 5 0 D + � 0 9 + . 8 9 . ; 9 + / + 8 + 9 + � 5 0 D . 3 3 0 - + 8 + �

7 0 3 . / + N 6 I / 0 9 . 3 9 0 + 2 3

� 8 9 . ; 9 + / + � 5 0 + - + B + / . 3 7 0 � 0 9 + 8 9 0 3 0 6 4 + 5 / + D . 9 4 0 , 2 / 2 4 + E F . > � 0 - + 7 + � 0 �

� 5 0 � 5 0 9 0 / . 3 3 . / + 9 7 . 2 3 6 I / 0 9 . 3 7 2 D 0 9 0 6 4 0 3 4 0 / . 3 � 5 0 0 7 2 4 + 9 . - � 7 2 ; . � + � + <+ , 4 0 9 + 9 . 3 6 I / 0 9 . 3 0 9 0 - . / 8 2 , + 9 . 8 9 . ; 9 + / + > � 3 4 + 3 2 4 5 + E F . 6 F . C + - 0 2 4 J � 0 , > � + 9 ++ 9 0 3 . , � 0 9 < 7 0 � 0 / . 3 7 0 3 0 6 � . , � 0 9 . 8 9 . ; 9 + / + 7 0 4 + , D . 9 / + � 5 0 0 3 4 0 3 . , 2 - 2 4 0 + .5 4 2 , 2 � + 7 . 9 . 3 6 I / 0 9 . 3 + 3 . / + 9 >

// Versão 2 da classe Soma2int import java.util.Scanner; public class Soma2int { public static void main(String[] args) { int a, b, s;

Scanner sc = new Scanner(System.in); System.out.print(“Primeiro operando: “); a=sc.nextInt(); System.out.print(“Segundo operando: “); b=sc.nextInt(); s=a+b; System.out.print(a + " + " + b + " = " + s ); } }

Page 41: Introdução à Programação de Computadores em Java

� �

I L ' " � P + sc.nextInt() - 0 2 - & % % 3 D / ' - + ' 3 # * # , % 5 + & - 0 $ & - ) % ' ( # " 3 - # & + ' 0 % " 5 + +3 - $ * % 5 + I 2 F 0 + ' 3 # * # , % 5 + & $ % & & - ? % & " % 3 - $ * % <enter> . % L ' " � P + & - 3 + & " % + ) % * + &# " 3 - # & + * # 5 + � 0 & - 0 3 % " 3 - 0 3 # 2 + 0 5 - 5 % 5 + 0 0 P + * # 5 + 0 & - $ + & & - " 5 + % L ' " � � - 00 - ( - * 7 % " 3 - 0

� � � � � � � � ��

Q - L # " % - # " # $ # % * # , - % ) % & # 1 ) - * v . 5 - L + & ( % % / ' - + 0 - ' $ + " 3 - 4 5 + 0 - � %& - 2 & - 0 - " 3 % 5 + 2 + & � � � � � � � � 6

> M 0 $ & - ) % ' ( 2 & + ? & % ( % / ' - $ % * $ ' * - % 1 & - % 5 - ' ( $ # & $ ' * + �I � �

r�

6 0 - " 5 + r +& % # + �

B M 0 $ & - ) % ' ( 2 & + ? & % ( % / ' - . % 2 % & 3 # & 5 + 0 " 4 ( - & + 0 � - � . & - 2 & - 0 - " 3 % " 5 + 7 + & % 0

- ( # " ' 3 + 0 . & - 0 2 - $ 3 # ) % ( - " 3 - . $ % * $ ' * - + " 4 ( - & + 5 - ( # " ' 3 + 0 2 % 0 0 % 5 + 0 5 - 0 5 - % 0 �

7 + & % 0 J

M 0 $ & - ) % ' ( 2 & + ? & % ( % / ' - $ + " ) - & 3 % ? & % ' 0 � - " 3 # ? & % 5 + 0 . � . - ( ? & % ' 0� % 7 & - " 7 - # 3 . � � � � � � O � � B > �

O M 0 $ & - ) % ' ( 2 & + ? & % ( % / ' - $ % * $ ' * - + 2 - & � ( - 3 & + 5 - ' ( & - $ 3 � " ? ' * + 5 -

$ + ( 2 & # ( - " 3 + $ - * % & ? ' & % *

� � �� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �� �� ( % + ' 3 & % " + ) # 5 % 5 - / ' - + 4 * 3 # ( + 2 & + ? & % ( % / ' - 5 - 0 - " ) + * ) - ( + 0 % 2 & - 0 - " 3 % D +$ + ( - " 3 1 & # + # " # $ # % * �

// Versão 2 da classe Soma2int

� ( $ + ( - " 3 1 & # + D ' ( % # " 5 # $ % � P + 2 % & % + 2 & + ? & % ( % 5 + & � 0 $ + ( - " 3 1 & # + 0 0 P +* # 3 - & % * ( - " 3 - # ? " + & % 5 + 0 2 - * + $ + ( 2 # * % 5 + & . � ; . " P + 3 ( / ' % * / ' - & # " L * ' " $ # % " %- G - $ ' � P + 5 + 2 & + ? & % ( % � % & % / ' - 0 - & ) - ( - " 3 P + + 0 $ + ( - " 3 1 & # + 0 � � % & % % � ' 5 % & +2 & + ? & % ( % 5 + & % * - ( H & % & � 0 - % 0 # . - / ' - ( ( % # 0 3 # ) - & / ' - * - & + 0 - ' $ F 5 # ? + . 5 -% 0 2 - $ 3 + 0 # ( 2 + & 3 % " 3 - 0 3 % # 0 $ + ( + . + % ' 3 + & 5 + $ F 5 # ? + . + 0 - ' $ + " 3 % $ 3 + . % ) - & 0 P +% $ 3 ' % * . 5 + - 0 3 % 5 + 5 + 2 & + ? & % ( % " ' ( 5 - 3 - & ( # " % 5 + ( + ( - " 3 + + ' % # " 5 % 5 % 0 & % , � - 0/ ' - + * - ) % & % ( % 3 + ( % & ' ( % 5 % 5 % + 2 � P + Q - 0 3 - 2 + " 3 + 5 - ) # 0 3 % + 0 $ + ( - " 3 1 & # + 0 0 P +' ( % L - & & % ( - " 3 % ( ' # 3 + # ( 2 + & 3 % " 3 - 2 % & % ( - * 7 + & % & % � ;� � � � � � � A � ; 5 + $ F 5 # ? + . � ; . 2 % & %% ' ( - " 3 % & % " + 0 0 % $ % 2 % $ # 5 % 5 - 5 - $ + ( 2 & - - " 5 - & + $ F 5 # ? + � + 3 - � 0 - / ' - D

Page 42: Introdução à Programação de Computadores em Java

� �

$ + ( 2 * - 3 % ( - " 3 - 5 - 0 " - $ - 0 0 1 & # + % 5 # $ # + " % & $ + ( - " 3 1 & # + 0 0 + H & - % 2 & F 2 & # % * # " ? ' % ? - ( 5 -2 & + ? & % ( % � P + M 0 3 - 3 # 2 + 5 - # " L + & ( % � P + - 0 3 1 5 # 0 2 + " � ) - * % 3 + 5 + 0 - - ( ) 1 & # + 0 0 � 3 # + 0 .# " $ * ' # " 5 + " + 0 ( % " ' % # 0 5 % * # " ? ' % ? - ( - " + 2 & F 2 & # + % ( H # - " 3 - 5 - 5 - 0 - " ) + * ) # ( - " 3 +

� + $ + ( - " 3 1 & # + % $ # ( % . + $ + ( 2 # * % 5 + & # ? " + & % 3 ' 5 + / ' % " 3 + - 0 3 - � % � 5 # & - # 3 % 5 + 0$ % & % $ 3 - & - 0 //

� ' 3 & + - G - ( 2 * + + " 5 - - 0 3 - 3 # 2 + 5 - $ + ( - " 3 1 & # + 2 + 5 - 0 - & ( ' # 3 + 4 3 # * �

… y = x * x +1; z = Math.sqrt(y); // Note-se que y é sempre maior do que 0 …

C - * - ( H & % � 0 - / ' - % L ' " � P + Math.sqrt(y) & - 3 + & " % ' ( double $ + ( % & % # , / ' % 5 & % 5 % 5 - y

- / ' - % & % # , / ' % 5 & % 5 % 0 F - 0 3 1 5 - L # " # 5 % 2 % & % + 0 " 4 ( - & + 0 " P + " - ? % 3 # ) + 0 K - " P +3 # ) D 0 0 - ( + 0 % $ - & 3 - , % 5 - / ' - y D 0 - ( 2 & - 2 + 0 # 3 # ) + 3 - & � % ( + 0 / ' - 3 - 0 3 1 � * + % " 3 - 0 5 -$ 7 % ( % & % L ' " � P + / ' - $ % * $ ' * % % & % # , / ' % 5 & % 5 % K - " P + + L # , D 0 0 - ( + 0 2 + 5 - & � % ( + 0 3 - &' ( ; < < = � ; ; � ; � � � � = . � ; . ' ( - & & + / ' - % $ + " 3 - $ - & # % - " / ' % " 3 + + 2 & + ? & % ( % - 0 3 1 - (L ' " $ # + " % ( - " 3 +

� % & % % * D ( 5 + $ + ( - " 3 1 & # + 5 - * # " 7 % . / ' - ) # ( + 0 % " 3 - & # + & ( - " 3 - . - 0 3 P + 3 % ( H D (5 # 0 2 + " � ) - # 0 + 0 $ + ( - " 3 1 & # + 0 5 - H * + $ + M 0 3 - 3 # 2 + 5 - $ + ( - " 3 1 & # + $ + ( - � % 2 + & /* -% $ % H % $ + ( */

� % 3 ' & % * ( - " 3 - / ' - - " 3 & - + # " � $ # + - + L # ( 5 + $ + ( - " 3 1 & # + 2 + 5 - & - ( + 03 - & 3 % " 3 % 0 * # " 7 % 0 / ' % " 3 % 0 % 0 " - $ - 0 0 1 & # % 0 . $ + ( + " + 0 - ? ' # " 3 - - G - ( 2 * + �

/* Versão obsoleta da classe Soma2int public class Soma2int {

public static void main(String[] args) { int a, b, s; a=1; b=2; s=a+b; System.out.print(a + " + " + b + " = " + s ); } } */

� P + 2 + 5 - ( + 0 D 3 - & $ + ( - " 3 1 & # + 0 5 - H * + $ + 5 - " 3 & + 5 - $ + ( - " 3 1 & # + 5 - H * + $ + � % & %% * D ( 5 - 0 3 - 0 > 3 # 2 + 0 5 - $ + ( - " 3 1 & # + 0 + � % ) % 5 # 0 2 � - % # " 5 % 5 + 0 $ + ( - " 3 1 & # + 0 5 -5 + $ ' ( - " 3 % � P + 5 - / ' - L % * % & - ( + 0 ( % # 0 � L & - " 3 -

Page 43: Introdução à Programação de Computadores em Java

� �

� 1 / ' - L % * % ( + 0 5 - * - ? # H # * # 5 % 5 - 2 + 5 - ( + 0 % $ & - 0 $ - " 3 % & 5 - 0 5 - � 1 ( % # 0 % * ? ' " 0 2 + " 3 + 0# ( 2 + & 3 % " 3 - 0 �

� � 0 " + ( - 0 / ' - 5 - & ( + 0 � 0 $ * % 0 0 - 0 - ) % & # 1 ) - # 0 5 - ) - ( 0 - & 3 P + # " L + & ( % 3 # ) + 0

/ ' % " 3 + 2 + 0 0 � ) - * 6

� �

� + $ % 0 + 5 - ' ( % $ * % 0 0 - . + 0 - ' " + ( - 5 - ) - 5 % & ' ( % # " 5 # $ % � P + 3 P +$ * % & % - $ + " $ # 0 % / ' % " 3 + 2 + 0 0 � ) - * 5 - / ' % * D % 0 ' % & - 0 2 + " 0 % H # * # 5 % 5 -

� >

� + $ % 0 + 5 - ' ( % ) % & # 1 ) - * . + 0 - ' " + ( - 5 - ) - # " 5 # $ % & 5 - L + & ( % $ * % & %- $ + " $ # 0 % . / ' % * + 0 # ? " # L # $ % 5 + 5 + 0 ) % * + & - 0 " - * % % & ( % , - " % 5 + 0

� # ( 2 + & 3 % " 3 - " + 3 % & / ' - + 0 " + ( - 0 � + ' # 5 - " 3 # L # $ % 5 + & - 0 � 0 P + 0 - ( 2 & -$ + " 0 3 # 3 ' � 5 + 0 2 + & ' ( % 0 - / ' " $ # % 5 - $ % & % $ 3 - & - 0 / ' - $ + ( - � % ( 2 + & ' ( % * - 3 & %- " P + 3 ( - 0 2 % � + 0 � ' % " 5 + L + & 4 3 # * ' 0 % & 5 ' % 0 + ' ( % # 0 2 % * % ) & % 0 $ + ( +# 5 - " 3 # L # $ % 5 + & 2 + 5 - ( + 0 ' 0 % & + $ % & 1 $ 3 - & _ 2 % & % � ' " 3 % & % 0 2 % * % ) & % 0 K -2 & - L - & # & ( + 0 2 + 5 - ( + 0 # ? ' % * ( - " 3 - � ' " 3 % & % 0 ) 1 & # % 0 2 % * % ) & % 0 $ % 2 # 3 % * # , % " 5 + %# " # $ # % * 5 - $ % 5 % ' ( % I * ? ' " 0 - G - ( 2 * + 0 + " 5 - - 0 3 % 0 # " 5 # $ % � � - 0 2 + 5 - ( 0 - &4 3 - # 0 �

long total_numeros_telefone;

long totalNumerosTelefone;

� + / ' - 0 - 0 - ? ' - % 5 + 2 3 % & - ( + 0 % 0 - ? ' # " 3 - $ + " ) - " � P + � + 0 " + ( - 0 5 % 0) % & # 1 ) - # 0 $ + ( - � % ( 2 + & ( # " 4 0 $ ' * % 0 - + 0 " + ( - 0 5 % 0 $ * % 0 0 - 0 $ + ( - � % ( 2 + &( % # 4 0 $ ' * % 0

> � $ F 5 # ? + 5 - ) - - 0 3 % & # " 5 - " 3 % 5 + � + ' � ' 0 3 # L # $ % 5 + � 5 - 3 % * L + & ( % / ' - 0 - � %

# ( - 5 # % 3 + 2 % & % + * - # 3 + & # 5 - " 3 # L # $ % & + # " � $ # + - + L # ( 5 - $ % 5 % ' ( 5 + 0 H * + $ + 0 5 +$ F 5 # ? +

� + 0 - G - ( 2 * + 0 % 2 & - 0 - " 3 % 5 + 0 % 3 D % / ' # . 3 # ) - ( + 0 % 2 & - + $ ' 2 % � P + 5 - 0 - ? ' # & - 0 3 % 0& - ? & % 0 M 0 - " P + % 0 3 # ) D 0 0 - ( + 0 0 - ? ' # 5 + . + 0 2 & + ? & % ( % 0 " P + L ' " $ # + " % & # % ( �

Page 44: Introdução à Programação de Computadores em Java

� �

� ' " $ # + " % ) % ( . ( % 0 % 0 ' % $ + ( 2 & - - " 0 P + 0 - & # % $ - & 3 % ( - " 3 - ( % # 0 5 # L � $ # * . 0 - " P +) - � % ( + 0 �

/* Versão 2 da classe Som2int escrita sem qualquer tipo de preocupação

com legibilidade*/ public class Soma2int {public static void

main(String[]args) {int a, b, s; Scanner sc = new Scanner(System.in);

System.out.print(“Primeiro operando:“); a=sc.nextInt();

System.out.print(“Segundo operando:“); b=sc.nextInt(); s=a+b;

System.out.print(a + " + " + b + " = " + s );}}

� $ F 5 # ? + % $ # ( % 3 - ( - G % $ 3 % ( - " 3 - + ( - 0 ( + 0 # ? " # L # $ % 5 + 2 % & % + $ + ( 2 # * % 5 + & 5 +/ ' - + $ F 5 # ? + 5 % 2 & # ( - # & % 2 1 ? # " % � + - " 3 % " 3 + . 2 % & % " F 0 D ( ' # 3 + ( % # 0 5 # L � $ # * 5 -$ + ( 2 & - - " 5 - & K - " 5 + % $ + ( 2 & - - " 0 P + ( % # 0 5 # L � $ # * # 0 0 + 3 + & " % & # % 3 % ( H D ( ( % # 05 # L � $ # * % 0 ' % ( % " ' 3 - " � P + . � ; . % 0 ' % - ) - " 3 ' % * $ + & & - $ � P + + ' % * 3 - & % � P +

� � � � � � � �� ( % - G 2 & - 0 0 P + D ' ( % 0 - / ' " $ # % H - ( L + & ( % 5 % 5 - + 2 - & % " 5 + 0 - + 2 - & % 5 + & - 0 �

& - 0 ' * 3 % 5 + 5 % % ) % * # % � P + 5 - ' ( % - G 2 & - 0 0 P + D ' ( ) % * + & � 1 ) # ( + 0 % * ? ' " 0 - G - ( 2 * + 0 5 -- G 2 & - 0 0 � - 0 % & # 3 ( D 3 # $ % 0 I - G 2 & - 0 0 P + a + b D ' ( % - G 2 & - 0 0 P + % & # 3 ( D 3 # $ % - " ) + * ) - " 5 ++ + 2 - & % 5 + & % & # 3 ( D 3 # $ + 0 + ( % +

� 0 + 2 - & % 5 + & - 0 % & # 3 ( D 3 # $ + 0 5 # 0 2 + " � ) - # 0 - ( � % ) % 0 P + �

� � ; < A � = < ; @A < � � : � � � � = @

� �� 8 �� � � A � = � � ; : � � =

+, -, *, /, % � 2 - & % � � - 0 % & # 3 ( D 3 # $ % 0 ' 0 ' % # 0 . 0 - " 5 +% + + 2 - & % 5 + & ( F 5 ' * + / ' - & - 3 + & " % +& - 0 3 + 5 % 5 # ) # 0 P + # " 3 - # & % 5 + 0 0 - ' 0+ 2 - & % " 5 + 0

int i = 5 % 2; // i vale 1

++a, --a ! " $ & - ( - " 3 + . 5 - $ & - ( - " 3 + 2 & - L # G + �

) % * + & 5 % ) % & # 1 ) - * a D # " $ & - ( - " 3 % 5 +� + ' 5 - $ & - ( - " 3 % 5 + � - 0 F 5 - 2 + # 0 D / ' -D 5 - ) + * ) # 5 +

int i, a=0;

i = ++a; // i vale 1, a vale 1

a++, a-- ! " $ & - ( - " 3 + . 5 - $ & - ( - " 3 + 0 ' L # G + �

) % * + & 5 % ) % & # 1 ) - * a D 5 - ) + * ) # 5 + - 0 Fint i, a=0;

i = a--; // i vale 0, a vale -1

Page 45: Introdução à Programação de Computadores em Java

� �

5 - 2 + # 0 D # " $ & - ( - " 3 % 5 + � + '5 - $ & - ( - " 3 % 5 + �

� - & 3 % 0 * # " ? ' % ? - " 0 $ + ( + + � . � � � - + � % ) % 5 # 0 2 + " # H # * # , % ( + 0 $ 7 % ( % 5 + 0+ 2 - & % 5 + & - 0 5 - % ' 3 + � % 3 & # H ' # � P + M 0 3 - 0 + 2 - & % 5 + & - 0 0 P + $ + " ) - " # - " 3 - 0 2 + & / ' -2 - & ( # 3 - ( ' ( % - 0 $ & # 3 % $ + " $ # 0 % 5 - # " 0 3 & ' � � - 0 5 - % 3 & # H ' # � P + � + & - G - ( 2 * + . %# " 0 3 & ' � P +

a = a * 3;

2 + 5 - 0 - & - 0 $ & # 3 % % H & - ) # % 5 % ( - " 3 - $ + ( + �

a *= 3;

� 2 & # ( - # & % ) # 0 3 % . % 0 ) % " 3 % ? - " 0 2 % & - $ - ( " P + 0 - & ( ' # 3 % 0 . ( % 0 0 P + Q - 0 5 - * + ? + . %# " 0 3 & ' � P + % H & - ) # % 5 % D ( % # 0 - L # $ # - " 3 - 5 + / ' - % + ' 3 & % �

Q - 2 + # 0 % L + & ( % % H & - ) # % 5 % .2 + & / ' - ( % # 0 0 # ( 2 * - 0 . 3 + & " % � 0 - ( % # 0 * - ? � ) - * " + 0 $ % 0 + 0 " P + 3 & # ) # % # 0

� ' 3 & + 0 + 2 - & % 5 + & - 0 5 - % ' 3 + � % 3 & # H ' # � P + 5 # 0 2 + " � ) - # 0 0 P + � +=, -=, *=, /=, %= $ ' � +0 # ? " # L # $ % 5 + D - ) # 5 - " 3 -

� � % ) % % 3 & # H ' # 2 & # + & # 5 % 5 - 0 � + ' 2 & - $ - 5 " $ # % 0 � % + 0 ) 1 & # + 0 + 2 - & % 5 + & - 0 5 - L + & ( % % / ' -+ & - 0 ' * 3 % 5 + 5 % % ) % * # % � P + 5 - ' ( % - G 2 & - 0 0 P + � % ) % 0 - � % # ? ' % * % + & - 0 ' * 3 % 5 + 5 % % ) % * # % � P +5 % - G 2 & - 0 0 P + ( % 3 - ( 1 3 # $ % $ + & & - 0 2 + " 5 - " 3 - I 0 0 # ( �

x = 1 + 2 * 3;

% 3 & # H ' # % x + ) % * + & 7. 3 % * $ + ( + 0 - & # % 5 - - 0 2 - & % & . � 1 / ' - - ( ( % 3 - ( 1 3 # $ % L % , - ( � 0 -2 & # ( - # & + % 0 ( ' * 3 # 2 * # $ % � � - 0 - 5 # ) # 0 � - 0 - 0 F 5 - 2 + # 0 % 0 0 + ( % 0 - 0 ' H 3 & % $ � � - 0 N % ( H D ( . 3 % * $ + ( - ( � % 3 - ( 1 3 # $ % . 2 + 5 - ( + 0 ' 0 % & 2 % & " 3 - 0 # 0 $ ' & ) + 0 2 % & % % * 3 - & % &2 & # + & # 5 % 5 - 0 - " ' ( % - G 2 & - 0 0 P + $ + ( ) 1 & # + 0 + 2 - & % 5 + & - 0 % & # 3 ( D 3 # $ + 0 . 3 + 5 + 0 $ + ( %( - 0 ( % 2 & # + & # 5 % 5 - . % ) % * # % � 0 - % - G 2 & - 0 0 P + 5 % - 0 / ' - & 5 % 2 % & % % 5 # & - # 3 %

Page 46: Introdução à Programação de Computadores em Java

� �

I 0 - G 2 & - 0 0 � - 0 * F ? # $ % 0 0 P + $ + " 0 3 # 3 ' � 5 % 0 2 + & + 2 - & % 5 + & - 0 * F ? # $ + 0 + ' 2 + & + 2 - & % 5 + & - 0& - * % $ # + " % # 0 . � & - 0 ' * 3 % 5 + 5 % % ) % * # % � P + 5 - ' ( % - G 2 & - 0 0 P + * F ? # $ % D true + ' false. � ; .' ( ) % * + & H + + * - % " +

� � ; < A � = < ; @� �� � � = @

� �� 8 �� � � A � = � � ; : � � =

&, && � + " � ' " � P + + ' - � * F ? # $ + I ( H + 0 + 0+ 2 - & % 5 + & - 0 & - 3 + & " % ( true 0 - - 0 F 0 -% ( H + 0 + 0 + 2 - & % " 5 + 0 L + & - ( 3 rue 6& - 3 + & " % ( false $ % 0 + $ + " 3 & 1 & # + �

+ 2 - & % 5 + & & % ) % * # % 0 - ( 2 & - % ( H + 0 + 0+ 2 - & % " 5 + 0 � + 2 - & % 5 + & && 0 F % ) % * # %+ 0 - ? ' " 5 + + 2 - & % " 5 + 0 - " - $ - 0 0 1 & # + .� ; . 0 - + 2 & # ( - # & + + 2 - & % " 5 + L + & true

boolean a = true, b =

false, c;

c = a && b; // c vale false

|, || Q # 0 � ' " � P + + ' + ' � * F ? # $ + I ( H + 0 + 0+ 2 - & % 5 + & - 0 & - 3 + & " % ( false 0 - 0 F 0 -% ( H + 0 + 0 + 2 - & % " 5 + L + & - ( false6& - 3 + & " % true $ % 0 + $ + " 3 & 1 & # + �

+ 2 - & % 5 + & || 0 F % ) % * # % + 0 - ? ' " 5 ++ 2 - & % " 5 + 0 - " - $ - 0 0 1 & # + . � ; . 0 - ++ 2 - & % " 5 + - 0 / ' - & 5 + L + & false

boolean a = true, b =

false, c;

c = a || b; // c vale true

^ � ' � - G $ * ' 0 # ) + C - 3 + & " % 3 & ' - 0 - - 0 F 0 -+ 0 0 - ' 0 % & ? ' ( - " 3 + 0 3 # ) - & - ( ) % * + & - 0* F ? # $ + 0 5 # L - & - " 3 - 0 6 C - 3 + & " % L % * 0 - $ % 0 +$ + " 3 & 1 & # +

boolean a = true, b = true,

c;

c = a ^ b; // c vale false

! � - ? % � P + � 2 - & % 5 + & ' " 1 & # + I" - ? % � P + 5 - L % * 0 - D 3 & ' - - % " - ? % � P +5 - 3 & ' - D L % * 0 -

boolean a= true, c;

c = !a; // c vale false

� � ; < A � = < ; @< ; � A � � = 8 A � @

� �� 8 �� � � A � = � � ; : � � =

< � - " + & C - 3 + & " % true 0 - - 0 F 0 - + int i = 0;

Page 47: Introdução à Programação de Computadores em Java

� �

+ 2 - & % " 5 + - 0 / ' - & 5 + L + & ( - " + & 5 +/ ' - + 2 - & % " 5 + 5 # & - # 3 + 6 & - 3 + & " % false

$ % 0 + $ + " 3 & 1 & # +

float f = 1.0f;

boolean b = (i < f); // b

vale true

<=

� - " + & + ' # ? ' % * C - 3 + & " % true 0 - - 0 F0 - + + 2 - & % " 5 + - 0 / ' - & 5 + L + & ( - " + &+ ' # ? ' % * % + + 2 - & % " 5 + 5 # & - # 3 + 6 & - 3 + & " %false $ % 0 + $ + " 3 & 1 & # +

int i = 1;

double d = 0.0;

boolean b = (i <= d); // b

vale false

> � % # + & C - 3 + & " % true 0 - - 0 F 0 - ++ 2 - & % " 5 + - 0 / ' - & 5 + L + & ( % # + & 5 + / ' -+ 2 - & % " 5 + 5 # & - # 3 + 6 & - 3 + & " % false $ % 0 +$ + " 3 & 1 & # +

short s = 10;

int i = 1;

boolean b = (s > i); // b

vale true

>= � % # + & + ' # ? ' % * C - 3 + & " % true 0 - - 0 F0 - + + 2 - & % " 5 + - 0 / ' - & 5 + L + & ( % # + &+ ' # ? ' % * % + + 2 - & % " 5 + 5 # & - # 3 + 6 & - 3 + & " %false $ % 0 + $ + " 3 & 1 & # +

short s = 10;

int i = 10;

boolean b = (s <= i); // b

vale true

== ! ? ' % * � P + $ + " L ' " 5 # & $ + ( ++ 2 - & % 5 + & % 3 & # H ' # � P + �=� C - 3 + & " % true

0 - - 0 F 0 - % ( H + 0 + 0 + 2 - & % " 5 + 0L + & - ( # ? ' % # 0 6 & - 3 + & " % false. $ % 0 +$ + " 3 & 1 & # +

short s = 0x10;

int i = 16;

boolean b = (s = i); // b

vale true

!= Q # L - & - " 3 - C - 3 + & " % true 0 - - 0 F 0 -% ( H + 0 + 0 + 2 - & % " 5 + 0 L + & - (5 # L - & - " 3 - 0 6 & - 3 + & " % false. $ % 0 +$ + " 3 & 1 & # +

int i = 1;

float f = 1.0f;

boolean b = (i != f); // b

vale false

� � � � � � � � �

� � � ' % # 0 0 P + + 0 & - 0 ' * 3 % 5 + 0 ( + 0 3 & % 5 + 0 2 - * % 0 0 - ? ' # " 3 - 0 # " 0 3 & ' � � - 0 �a) int x;

i) x = -3+4*5–6; System.out.println(x);

ii) x = -3 *4 %–6; System.out.println(x);

iii) x = (7 + 6) % 5 / 2; System.out.println(x);

Page 48: Introdução à Programação de Computadores em Java

� �

b) int x = 2, y, z;

i) x *= 3 + 2; System.out.println(x);

ii) x *= y = z = 4; System.out.println(x);

iii) x = y == z; System.out.println(x);

> � Q % 5 % 0 % 0 0 - ? ' # " 3 - 0 % 3 & # H ' # � � - 0byte umByte = 10;

boolean a=false, b=false;

� % * $ ' * - + ) % * + & 5 % 0 0 - ? ' # " 3 - 0 - G 2 & - 0 0 � - 0 * F ? # $ % 0

a) (umByte > 10) && !a

b) (!a^b) && (a || !b)

c) !(a || b) == (!a && !b)

B � M 0 $ & - ) % ' ( % - G 2 & - 0 0 P + / ' - 2 - & ( # 3 % ) - & # L # $ % & 0 - + ) % * + & 5 % ) % & # 1 ) - * x D2 + 0 # 3 # ) + ( % 0 ( - " + & 5 + � �

J � M 0 $ & - ) % ' ( % - G 2 & - 0 0 P + / ' - 2 - & ( # 3 % ) - & # L # $ % & 0 - ' ( 5 % 5 + # " 3 - # & + D 2 % & + '# ( 2 % &

Page 49: Introdução à Programação de Computadores em Java

� �

� � � � � � � � � � � � � � � � � � � ��

� � � �� � � � � � � � � � � � � � � � � � � � � � � � � �� � �� �� � � � � � � � �� � � � � � � � � � � � �� � � � � � � �� � � � � � � � � � � � � � � � � � � � � � � �� � � � � � � � � � � � � � � � � � � � � � �� � � � � � � � � �� � �� �� � � � � � � � � � � �� � � � � � � � �� �� �� � � � � � � � � � � � � � �

. / . � 2 / . 3 < � 5 + 6 7 . + B . 9 7 + / . 3 + 9 0 3 . , 5 E F . 7 0 8 9 . B , 0 / + 3 8 . 7 0/ . 3 4 9 + 9 � 3 0 � 5 0 + 3 3 0 � 5 6 - 2 + 3 < 3 0 , 0 - E 0 3 0 2 4 0 9 + E 0 3 3 F . 3 5 D 2 - 2 0 6 4 0 3 8 + 9 +7 0 D 2 6 2 9 � 5 + , � 5 0 9 + , ; . 9 2 4 / . > � 0 6 7 . 5 / 8 9 . ; 9 + / + 5 / + 4 9 + 7 5 E F . 7 0 5 /

+ , ; . 9 2 4 / . 8 + 9 + 5 / + , 2 6 ; 5 + ; 0 / 7 0 8 9 . ; 9 + / + E F . < C - . 6 � 0 6 2 0 6 4 0 � 5 0 +, 2 6 ; 5 + ; 0 / 7 0 8 9 . ; 9 + / + E F . 8 0 9 / 2 4 + + 4 9 + 7 5 E F . 7 2 9 0 - 4 + 7 0 3 3 + 3 0 3 4 9 5 4 5 9 + 7 0- . 6 4 9 . , . >

� 3 , 2 6 ; 5 + ; 0 6 3 7 0 8 9 . ; 9 + / + E F . 2 / 8 0 9 + 4 2 � + 3 < 3 0 � + / 0 3 4 9 5 4 5 9 + 7 + 3 . 5 . 9 2 0 6 4 + 7 + 38 . 9 . B � 0 - 4 . 3 < 7 2 3 8 0 / 7 0 3 4 + D + - 2 , 2 7 + 7 0 > � 3 3 2 / 3 0 9 J 8 . 3 3 A � 0 , - . 6 4 9 . , + 9 . D , 5 1 .7 0 0 1 0 - 5 E F . 7 . 8 9 . ; 9 + / + 5 3 + 6 7 . 7 2 9 0 - 4 + / 0 6 4 0 3 0 � 5 6 - 2 + 3 < 3 0 , 0 - E 0 3 02 4 0 9 + E 0 3 > � T + / + � 3 0 D , 5 1 . 7 0 0 1 0 - 5 E F . 7 0 5 / 8 9 . ; 9 + / + � 3 0 � 5 6 - 2 + 8 0 , + � 5 + ,+ 3 3 5 + 3 2 6 3 4 9 5 E 0 3 3 F . 0 1 0 - 5 4 + 7 + 3 >

� 4 C + � 5 2 < � 2 / . 3 + 8 0 6 + 3 0 1 0 / 8 , . 3 7 0 8 9 . ; 9 + / + 3 - . / 5 / D , 5 1 . 7 0 0 1 0 - 5 E F .3 0 � 5 0 6 - 2 + , < � � � < + 3 2 6 3 4 9 5 E 0 3 3 F . 0 1 0 - 5 4 + 7 + 3 5 / + 3 + 3 0 ; 5 2 9 � 3 . 5 4 9 + 3 < 8 0 , +. 9 7 0 / � 5 0 + 8 + 9 0 - 0 / 6 . 8 9 . ; 9 + / + >

� 0 4 . / + 9 / . 3 - . / . 0 1 0 / 8 , . . 8 9 . ; 9 + / + � 5 0 - + , - 5 , + + J 9 0 + 7 . - A 9 - 5 , . < 8 0 7 2 7 .6 5 / 7 . 3 0 1 0 9 - A - 2 . + 6 4 0 9 2 . 9 0 3 �

// Programa para cálculo da área A, de um círculo de raio r: A = pi * r *r // versão 1

W X Y Z[ \ ]^

V

C

Page 50: Introdução à Programação de Computadores em Java

� �

import java.util.*; public class AreaCirculo { public static void main (String [] args) { float raio; double area; Scanner sc = new Scanner(System.in); System.out.print(“Escreva o valor do raio: “); raio = sc.nextFloat(); area = Math.PI * raio * raio; System.out.print(“Área do circulo de raio “+raio+ “é “ + area); } }

� 0 9 2 D 2 - + / . 3 � 5 0 . 8 9 . ; 9 + / + C 0 1 0 - 5 4 + 7 . 7 + 3 0 ; 5 2 6 4 0 D . 9 / + �

� � Q - $ * % & % % ) % & # 1 ) - * raio6

> � Q - $ * % & % % ) % & # 1 ) - * area6

B � M 0 $ & - ) - " + - $ & P � M 0 $ & - ) % + ) % * + & 5 + & % # + 6

J � I 3 & # H ' # � ) % & # 1 ) - * & % # + + ) % * + & - " 3 & % 5 + 2 - * + ' 3 # * # , % 5 + & 6

O �

� % * $ ' * % % 1 & - % 5 + $ � & $ ' * + - % 3 & # H ' # � % � ) % & # 1 ) - * area6� �

M 0 $ & - ) % " + - $ & P . + ) % * + & $ % * $ ' * % 5 + 6� �

N - & ( # " % % - G - $ ' � P +

� + / ' - 0 - 0 - ? ' - . - 0 3 ' 5 % & - ( + 0 % 0 - 0 3 & ' 3 ' & % 0 5 - $ + " 3 & + * + / ' - 2 - & ( # 3 - ( % * 3 - & % & %- G - $ ' � P + 2 ' & % ( - " 3 - 0 - / ' - " $ # % * M 0 3 % 0 - 0 3 & ' 3 ' & % 0 ) P + 2 - & ( # 3 # & � " + 0 - 0 $ & - ) - &2 & + ? & % ( % 0 ) - & 5 % 5 - # & % ( - " 3 - # " 3 - & - 0 0 % " 3 - 0

� � � � � � � � � � � � � � � � � � �� � � �if

I 0 # " 0 3 & ' � � - 0 5 - 0 - * - $ � P + 0 P + 5 % 0 - 0 3 & ' 3 ' & % 0 ( % # 0 ' 3 # * # , % 5 % 0 " + $ + " 3 & + * + 5 + L * ' G +5 - 2 & + ? & % ( % I ( % # 0 0 # ( 2 * - 0 5 - 0 0 % 0 # " 0 3 & ' � � - 0 3 - ( % 0 - ? ' # " 3 - 0 # " 3 % G - �

� + % " - G +I 2 + 5 - ( + 0 ) - & + / ' - D % 0 # " 3 % G - 5 - ' ( % * # " ? ' % ? - ( - $ + ( + % 2 + 5 - ( + 0 5 - 0 $ & - ) - & �

+ " 5 - expressão_lógica & - 2 & - 0 - " 3 % ' ( % - G 2 & - 0 0 P + * F ? # $ % - instrução & - 2 & - 0 - " 3 %' ( % # " 0 3 & ' � P + / ' - 2 + 5 - & 1 0 - & 0 # ( 2 * - 0 + ' $ + ( 2 + 0 3 % � ( % # " 0 3 & ' � P + $ + ( 2 + 0 3 % " P +D ( % # 0 5 + / ' - ' ( H * + $ + 5 - # " 0 3 & ' � � - 0 0 # ( 2 * - 0 � H * + $ + $ + ( - � % 2 + & { - % $ % H %

if (expressão_lógica ) instrução

Page 51: Introdução à Programação de Computadores em Java

� �

$ + ( } � % & % % * D ( 5 - # " 0 3 & ' � � - 0 . ' ( H * + $ + 2 + 5 - $ + " 3 - & . " + 0 - ' # " � $ # + . % 5 - $ * % & % � P +

5 - ) % & # 1 ) - # 0

� 0 # ? " # L # $ % 5 + 5 - 0 3 % # " 0 3 & ' � P + D + 0 - ? ' # " 3 - � K - - 0 F 0 - expressão_lógica & - 0 ' * 3 % & " +) % * + & * F ? # $ + true. - " 3 P + % 2 & F G # ( % # " 0 3 & ' � P + % 0 - & - G - $ ' 3 % 5 % 0 - & 1 % # " 0 3 & ' � P +instrução

� % 0 + $ + " 3 & 1 & # + . 3 ' 5 + L ' " $ # + " % $ + ( + 0 - % # " 0 3 & ' � P + instrução " P +L # , - 0 0 - 2 % & 3 - 5 + 2 & + ? & % ( %

� % & % 5 % & ' ( - G - ( 2 * + . 2 - " 0 - ( + 0 " + ) % ( - " 3 - " + $ % 0 + 5 + 2 & + ? & % ( % / ' - $ % * $ ' * % %1 & - % 5 - ' ( $ � & $ ' * + K - & 1 / ' - L % , 0 - " 3 # 5 + $ % * $ ' * % & % 1 & - % ( - 0 ( + 0 - + ' 3 # * # , % 5 + & 5 - &' ( ) % * + & " - ? % 3 # ) + 2 % & % + & % # + � I & - 0 2 + 0 3 % D " P + � % 3 - ( % 3 # $ % ( - " 3 - . + & % # + D5 - L # " # 5 + $ + ( + ' ( % 5 # 0 3 � " $ # % - ' ( % 5 # 0 3 � " $ # % D . 2 + & 5 - L # " # � P + . " P + " - ? % 3 # ) % Q - 0 3 -2 + " 3 + 5 - ) # 0 3 % . % ) - & 0 P + � / ' - % 2 & - 0 - " 3 % ( + 0 2 % & % - 0 3 - 2 & + ? & % ( % 5 - ) - & 1 0 - & & - �- 0 $ & # 3 % I ) - & 0 P + 0 - ? ' # " 3 - 5 + 2 & + ? & % ( % . & - 2 & - 0 - " 3 % ' ( % 2 & # ( - # & % ( - * 7 + & # % L % $ - �) - & 0 P + % " 3 - & # + &

// Programa para cálculo da área A, de um círculo de raio r : A = pi * r *r

// versão 2 - O raio terá que obedecer à condição r>= 0 import java.util.*; public class AreaCirculo { public static void main (String [] args) { float raio; double area; Scanner sc = new Scanner(System.in);

System.out.print(“Escreva o valor do raio: “); raio = sc.nextFloat(); if(raio>=0) { area = Math.PI * raio * raio; System.out.print(“Área do circulo de raio “+raio+ “é “ + area); } }

}

� - 0 3 % ) - & 0 P + . 0 - - 0 F 0 - + & % # + L + & 2 + 0 # 3 # ) + + ' " ' * + D / ' - + 2 & + ? & % ( % - G - $ ' 3 % %# " 0 3 & ' � P + $ + ( 2 + 0 3 %

{ area = Math.PI * raio * raio;

Page 52: Introdução à Programação de Computadores em Java

� �

System.out.print(“Área do circulo de raio “+raio+ “é “ + area); } � % 0 + $ + " 3 & 1 & # + - 0 3 % # " 0 3 & ' � P + $ + ( 2 + 0 3 % D 0 # ( 2 * - 0 ( - " 3 - # ? " + & % 5 % - + 2 & + ? & % ( %3 - & ( # " % # ( - 5 # % 3 % ( - " 3 -

� � � � � � � � � � � � � � � � � � � � � � � � � �� �if else

� & - / ' - " 3 - ( - " 3 - L % , - ( + 0 ' ( % $ + # 0 % 0 - ' ( % 5 % 5 % $ + " 5 # � P + 0 - ) - & # L # $ % & ( % 0L % & - ( + 0 + ' 3 & % . $ % 0 + % $ + " 5 # � P + " P + 0 - ) - & # L # / ' - � % & % - 0 3 - 0 $ % 0 + 0 . 2 + 5 - ( + 0 ' 0 % & %# " 0 3 & ' � P + 5 - 0 - * - $ � P + - ( % * 3 - & " % 3 # ) % if else. $ ' � % 0 # " 3 % G - D �

K - expressão_lógica & - 3 + & " % & + ) % * + & * F ? # $ + true - " 3 P + + 2 & + ? & % ( % - G - $ ' 3 % %instrução1. 0 - " P + + 2 & + ? & % ( % - G - $ ' 3 % instrução2.

I # " 0 3 & ' � P + if else L ' " $ # + " % 5 + 0 - ? ' # " 3 - ( + 5 + � ) % * + & 5 % - G 2 & - 0 0 P + D $ % * $ ' * % 5 +

K - + ) % * + & L + & true. % instrução1 0 - & 1 - G - $ ' 3 % 5 % ( % 0 % instrução2 " P + K - %$ + " 5 # � P + % ) % * # % & L % * 0 - . % instrução2 0 - & 1 - G - $ ' 3 % 5 % ( % 0 % instrução1 " P +

� + 5 - ( + 0 ' 0 % & - 0 3 % # " 0 3 & ' � P + 2 % & % ( - * 7 + & % & ( % # 0 ' ( 2 + ' $ + + " + 0 0 + 2 & + ? & % ( % 5 +$ 1 * $ ' * + 5 % 1 & - % 5 + $ � & $ ' * + K - + ' 3 # * # , % 5 + & # " 3 & + 5 ' , # & ' ( ) % * + & " - ? % 3 # ) + 2 % & % + & % # +0 - & 1 # " L + & ( % 5 + 5 # 0 0 + % " 3 - 0 5 + 2 & + ? & % ( % 3 - & ( # " % &

// Programa para cálculo da área A, de um círculo de raio r : r>= 0 e A = pi * r *r // versão 2.1 – O utilizador é informado se introduzir um raio menor do que 0. import java.util.*; public class AreaCirculo { public static void main (String [] args) { float raio; double area; Scanner sc = new Scanner(System.in);

System.out.print(“Escreva o valor do raio: “); raio = sc.nextFloat();

if ( expressão_lógica ) instrução1 else instrução2

Page 53: Introdução à Programação de Computadores em Java

� �

if(raio>=0) { area = Math.PI * raio * raio; System.out.print(“Área do circulo de raio “+raio+ “é “ + area); } else System.out.println(“O raio não pode ser negativo”); } }

� + & 3 % " 3 + . " - 0 3 % ) - & 0 P + 0 - + ' 3 # * # , % 5 + & # " 0 - & # & ' ( ) % * + & 2 + 0 # 3 # ) + + ' " ' * + 2 % & % + & % # ++ 2 & + ? & % ( % $ % * $ ' * % % 1 & - % - % 2 & - 0 - " 3 % � % " + - $ & P � % 0 + $ + " 3 & 1 & # + . + 2 & + ? & % ( %- 0 $ & - ) - 0 # ( 2 * - 0 ( - " 3 - % ( - " 0 % ? - ( � � & % # + " P + 2 + 5 - 0 - & " - ? % 3 # ) +

� ' 3 & + - G - ( 2 * + � % 3 - ( % 3 # $ % ( - " 3 - 5 - L # " - � 0 - 0 # " % * 5 - x . S(x). 2 % & % x & - % * . 5 %0 - ? ' # " 3 - L + & ( % �

��

���

<−=>

= �� ��

�� �

��

� ���

� 8 9 . ; 9 + / + 3 0 ; 5 2 6 4 0 + 8 9 0 3 0 6 4 + 5 / + 2 / 8 , 0 / 0 6 4 + E F . 8 . 3 3 A � 0 , 8 + 9 + 0 3 4 + D 5 6 E F . >

// Programa que calcula o sinal de um número real import java.util.*; public class Sinal { public static void main (String [] args) { float x; Scanner sc = new Scanner(System.in);

System.out.print(“Escreva um real: “); x = sc.nextFloat(); if(x>0) System.out.print(“1”); else if (x<0) System.out.print(“-1”); else System.out.println(“0”);

}

}

Page 54: Introdução à Programação de Computadores em Java

� �

� % * - % 2 - " % & & - 2 % & % & / ' - - 0 3 % # ( 2 * - ( - " 3 % � P + D ( % # 0 - L # $ # - " 3 - 5 + / ' - % / ' - * % / ' - D7 % H # 3 ' % * ( - " 3 - 0 - ? ' # 5 % 2 + & % * ? ' " 0 � + ) - " 0 2 & + ? & % ( % 5 + & - 0 . 5 - 0 # ? " % 5 % ( - " 3 -

if (x>0) System.out.print(“1”); if (x<0) System.out.print(“-1”); if (x==0) System.out.println(“0”);

� % # ( 2 * - ( - " 3 % � P + % $ # ( % + 2 & + ? & % ( % D L + & � % 5 + % L % , - & 0 - ( 2 & - B 3 - 0 3 - 0 � %# ( 2 * - ( - " 3 % � P + 5 % $ * % 0 0 - Sinal . + 2 & + ? & % ( % L % & 1 ' ( 3 - 0 3 - + ' 5 + # 0 . " + ( 1 G # ( +

� ' % " 5 + ( # 0 3 ' & % ( + 0 # " 0 3 & ' � � - 0 if $ + ( # " 0 3 & ' � � - 0 if else 2 + 5 - ( 0 ' & ? # &% ( H # ? ' # 5 % 5 - 0 � + $ F 5 # ? +

if(a) if (b) i++; else --i;

K - " P + L + 0 0 - 5 # 3 + ( % # 0 " % 5 % " P + 0 % H - & � % ( + 0 % / ' - if 2 - & 3 - " $ - & # % + else M 0 3 %

0 # 3 ' % � P + - 0 3 1 3 # 2 # L # $ % 5 % $ + ( + " + ( - � � A 8 � � � 8 � ; � @ ; � I & - ? & % 2 % & % 0 - - * # ( # " % & - 0 3 %% ( H # ? ' # 5 % 5 - D % 0 - ? ' # " 3 - � � else 2 - & 3 - " $ - 0 - ( 2 & - % + if ( % # 0 2 & F G # ( + / ' - % # " 5 %" P + 3 - " 7 % else

� � � � � � � � �

L >

� 0 3 0 6 � . , � + 5 / 8 9 . ; 9 + / + � 5 0 - + , - 5 , 0 . / J 1 2 / . 7 0 N 6 I / 0 9 . 3 9 0 + 2 3 > � 3 N6 I / 0 9 . 3 7 0 � 0 / 3 0 9 2 6 4 9 . 7 5 � 2 7 . 3 8 0 , . 5 4 2 , 2 � + 7 . 9 > � 1 0 / 8 , . 7 0 5 4 2 , 2 � + E F . �

Introduza um número: 3 <Enter> Introduza outro número: 8 <Enter> O máximo é 8.

N >

� 0 3 0 6 � . , � + 5 / 8 9 . ; 9 + / + � 5 0 - + , - 5 , + . � + , . 9 + B 3 . , 5 4 . 7 0 5 / 6 I / 0 9 .2 6 4 9 . 7 5 � 2 7 . 8 0 , . 5 4 2 , 2 � + 7 . 9 > � 1 0 / 8 , . 7 0 5 4 2 , 2 � + E F . �

Introduza um número: -3 <Enter>

Page 55: Introdução à Programação de Computadores em Java

� �

O valor absoluto de -3 é 3.

� >

� / 8 , 0 / 0 6 4 0 . + , ; . 9 2 4 / . � 5 0 7 0 3 0 6 � . , � 0 5 8 + 9 + . 9 7 0 6 + 9 8 . 9 . 9 7 0 / - 9 0 3 - 0 6 4 04 9 3 6 I / 0 9 . 3 8 0 7 2 7 . 3 + . 5 4 2 , 2 � + 7 . 9 : 0 1 0 9 - A - 2 . � 7 . - + 8 2 4 5 , . � � � ? >

R >

� 0 3 0 6 � . , � + 5 / 8 9 . ; 9 + / + � 5 0 + 8 9 0 3 0 6 4 0 �

+ >

+ 3 9 + A � 0 3 9 0 + 2 3 7 0 5 / 8 . , 2 6 � / 2 . 7 . 3 0 ; 5 6 7 . ; 9 + 5 < - + 3 . 0 1 2 3 4 + / >B >

� 3 9 + A � 0 3 9 0 + 2 3 . 5 2 / + ; 2 6 J 9 2 + 3 7 0 5 / 8 . , 2 6 � / 2 . 7 . 3 0 ; 5 6 7 . ; 9 + 5 >� 1 0 / 8 , . 7 0 5 4 2 , 2 � + E F . �

Introduza os coeficientes de um polinómio de grau 2

a: 1 <Enter> b: 2 <Enter> c: 2 <Enter> As raízes são -1+i e -1-i

� >

� 0 3 0 6 � . , � + 5 / 8 9 . ; 9 + / + � 5 0 9 0 - 0 B + R � + , . 9 0 3 2 6 4 0 2 9 . 3 0 � 5 0 2 6 7 2 � 5 0� 5 + 6 4 . 3 7 0 3 3 0 3 � + , . 9 0 3 3 F . 8 + 9 0 3 < � 5 + 6 4 . 3 3 F . A / 8 + 9 0 3 < � 5 + 6 4 . 3 3 F .8 . 3 2 4 2 � . 3 0 � 5 + 6 4 . 3 3 F . 6 0 ; + 4 2 � . 3 >

� >

� 0 3 0 6 � . , � + 5 / 8 9 . ; 9 + / + � 5 0 - + , - 5 , 0 . / J 1 2 / . 7 0 � 6 I / 0 9 . 3 9 0 + 2 3 7 + 7 . 38 0 , . 5 4 2 , 2 � + 7 . 9 > � 1 0 / 8 , . 7 0 5 4 2 , 2 � + E F . �

Introduza um número: 3.2 <Enter> Introduza outro número: 8.0 <Enter> Introduza mais outro número: 2.8 <Enter> O máximo é 8.0

� � � � � � � � � � � � � � � � � � �

� ( % 5 % 0 L + & ( % 0 5 - - " $ + " 3 & % & + ( 1 G # ( + 5 - 3 & 0 + ' ( % # 0 " 4 ( - & + 0 . $ + " 0 # 0 3 - - (- " $ + " 3 & % & ( 1 G # ( + 0 0 ' $ - 0 0 # ) + 0 - " 3 & - 2 % & - 0 5 - " 4 ( - & + 0 K - 5 + # 0 " 4 ( - & + 0

Page 56: Introdução à Programação de Computadores em Java

� �

- 0 3 # ) - & - ( ? ' % & 5 % 5 + 0 " % 0 ) % & # 1 ) - # 0 G - � 2 + 5 - & - ( + 0 $ % * $ ' * % & + ( 1 G # ( +- 0 $ & - ) - " 5 + �

if(x>y)

maximo = x;

else

maximo = y;

H 3 + 6 7 . . . 8 0 9 + 7 . 9 - . 6 7 2 - 2 . 6 + , 8 . 7 0 9 0 / . 3 0 3 - 9 0 � 0 9 / + 2 3 + B 9 0 � 2 + 7 + / 0 6 4 0

maximo = x>y ? x : y;

- 3 - & - ( + 0 - G % $ 3 % ( - " 3 - + ( - 0 ( + & - 0 ' * 3 % 5 + � + 2 - & % 5 + & $ + " 5 # $ # + " % * . 2 + & ) - , - 03 % ( H D ( $ 7 % ( % 5 + + # L � % & # 3 ( D 3 # $ + . 3 - ( % 0 - ? ' # " 3 - L + & ( % �

K - expressão_lógica ) % * - & true. + + 2 - & % 5 + & & - 3 + & " % + ) % * + & 5 % expressão1 $ % 0 +$ + " 3 & 1 & # + & - 3 + & " % + ) % * + & 5 % expressão2

� � � � � � � � � � � � � � � � � � � � � � � �� switch

N - ( + 0 % ? + & % 2 - * % L & - " 3 - % 3 % & - L % 5 - $ + " 0 3 & ' # & ' ( 2 & + ? & % ( % / ' - . 5 % 5 + ' ( � " 5 # $ -# " 3 - # & + - " 3 & - � - � % 2 & - 0 - " 3 - + 5 # % 5 % 0 - ( % " % & - 0 2 - $ 3 # ) + . 0 - " 5 + / ' - + � " 5 # $ - �$ + & & - 0 2 + " 5 - � 0 - ? ' " 5 % � L - # & % - + � " 5 # $ - � $ + & & - 0 2 + " 5 - % + 5 + ( # " ? +

M 0 3 - 2 & + ? & % ( % . % 0 0 # ( $ + ( + ( ' # 3 + 0 + ' 3 & + 0 . % 5 ( # 3 - ) 1 & # % 0 # ( 2 * - ( - " 3 % � � - 0

� 0 % " 5 + % # " 0 3 & ' � P + 5 - 0 - * - $ � P + % * 3 - & " % 3 # ) % if else. / ' - ) # ( + 0 % " 3 - 0 . + 2 & + ? & % ( %0 - & # % �

expressão_lógica ? expressão1 : expressão2 ;

Page 57: Introdução à Programação de Computadores em Java

� �

// Programa que dado um índice inteiro entre 1 e 7 apresenta o dia da semana // correspondente // Versão 1 – Implementação baseada na instrução de selecção alternativa if else Scanner sc = new Scanner(System.in); public class DiaDaSemana { public static void main(String [] args) { int i; Scanner sc = new Scanner(System.in); System.out.print("Escreva um numero entre 1 e 7: "); i = sc.nextInt(); if(i==1) System.out.println("Segunda-feira"); else if (i==2) System.out.println("Terça-feira"); else if(i==3) System.out.println("Quarta-feira"); else if(i==4) System.out.println("Quinta-feira"); else if (i==5) System.out.println("Sexta-feira"); else if(i==6) System.out.println("Sábado"); else if(i==7) System.out.println("Domingo"); else System.out.println("Número inválido"); } }

� + 9 + 0 3 4 0 4 2 8 . 7 0 - + 3 . 3 < 0 / � 5 0 7 0 8 0 6 7 0 6 7 . 7 . � + , . 9 7 0 5 / + � + 9 2 J � 0 , 8 . 7 0 / . 3D + � 0 9 � J 9 2 + 3 - . 2 3 + 3 < 4 0 / . 3 7 2 3 8 . 6 A � 0 , + 2 6 3 4 9 5 E F . 7 0 3 0 , 0 - E F . / I , 4 2 8 , +

switch> � �

H 3 + 6 7 . 0 3 4 + 2 6 3 4 9 5 E F . . 6 . 3 3 . 8 9 . ; 9 + / + 8 + 3 3 + 9 2 + + 4 0 9 . 3 0 ; 5 2 6 4 0 + 3 8 0 - 4 . �

// Programa que dado um índice inteiro entre 1 e 7 apresenta o dia da semana // correspondente // Versão 2 – Implementação baseada na instrução de selecção múltipla switch import java.util.*; public class DiaDaSemana { public static void main(String [] args) { int i; Scanner sc = new Scanner(System.in); System.out.print("Escreva um número entre 1 e 7: "); i = sc.nextInt(); switch(i) {

case 1:System.out.println("Segunda-feira"); break; case 2: System.out.println("Terça-feira"); break; case 3: System.out.println("Quarta-feira"); break; case 4: System.out.println("Quinta-feira"); break; case 5: System.out.println("Sexta-feira"); break; case 6: System.out.println("Sábado"); break; case 7: System.out.println("Domingo"); break; default: System.out.println("Número inválido"); } } }

Page 58: Introdução à Programação de Computadores em Java

� �

I # " 0 3 & ' � P + switch L ' " $ # + " % 5 + 0 - ? ' # " 3 - ( + 5 + � & # ( - # & + . + 2 & + ? & % ( % $ % * $ ' * % +) % * + & 5 % - G 2 & - 0 0 P + 5 - " 3 & + 5 - 2 % & - " 3 - 0 # 0 * + ? + % 0 - ? ' # & � 2 % * % ) & % switch

� +- G - ( 2 * + % $ # ( % . D % 2 - " % 0 * # 5 + + ) % * + & 5 % ) % & # 1 ) - * i

� % 0 - % 5 + " - 0 0 - ) % * + & . + L * ' G + 5 -2 & + ? & % ( % 0 % * 3 % 2 % & % + $ % 0 + $ + & & - 0 2 + " 5 - " 3 - � + & - G - ( 2 * + . 0 - i ? ' % & 5 % & + ) % * + & B . +L * ' G + 0 % * 3 % 2 % & % % # " 0 3 & ' � P + / ' - ) - ( % 0 - ? ' # & % case 3:

> Q - 2 + # 0 2 & + 0 0 - ? ' - $ + ( % 0# " 0 3 & ' � � - 0 & - 0 3 % " 3 - 0 % 3 D % + L # ( � 5 + $ + & 2 + � 5 + switch + ' % 3 D % 2 % & - $ - & % # " 0 3 & ' � P +break;. I # " 0 3 & ' � P + break L % , $ + ( / ' - + L * ' G + 0 % * 3 - " + ) % ( - " 3 - . 5 - 0 3 % ) - , 2 % & %L + & % 5 + switch. # 0 3 + D . + 2 & + ? & % ( % 2 & + 0 0 - ? ' - $ + ( % # " 0 3 & ' � P + / ' - % 2 % & - $ -# ( - 5 # % 3 % ( - " 3 - % 0 - ? ' # & � $ 7 % ) - 3 % $ + & & - 0 2 + " 5 - " 3 - % + L # " % * 5 % # " 0 3 & ' � P + switch

default: D + 2 $ # + " % * - 0 F D - G - $ ' 3 % 5 + 0 - " - " 7 ' ( 5 + 0 + ' 3 & + 0 $ % 0 + 0 + $ + & & - &

N ' 5 + + / ' - 0 - 2 + 5 - L % , - & $ + ( % # " 0 3 & ' � P + switch 3 % ( H D ( 0 - 2 + 5 - L % , - & $ + ( ' ( %0 - / ' " $ # % - " $ % 5 - % 5 % 5 - if-else 3 % * $ + ( + L + # # * ' 0 3 & % 5 + " + # " � $ # + � + - " 3 % " 3 + ./ ' % " 5 + 3 - ( + 0 ( ' # 3 % 0 + 2 � � - 0 5 # L - & - " 3 - 0 . D % $ + " 0 - * 7 1 ) - * ' 0 % & ( + 0 % # " 0 3 & ' � P +switch 2 + & / ' - . - " 3 & - + ' 3 & % 0 & % , � - 0 . 3 + & " % + 2 & + ? & % ( % ( % # 0 * - ? � ) - *

I 5 - 0 $ & # � P + L + & ( % * 5 % # " 0 3 & ' � P + switch D 5 % 5 % 2 + & �

+ " 5 - expressão & - 2 & - 0 - " 3 % ' ( % - G 2 & - 0 0 P + / ' - % ) % * # % ' ( # " 3 - # & + + ' ' ( $ % & % $ 3 - & � .literal D ' ( ) % * + & $ + " 0 3 % " 3 - - instrução & - 2 & - 0 - " 3 % ' ( % # " 0 3 & ' � P + / ' - 2 + 5 - & 1 0 - &$ + ( 2 + 0 3 % I 0 2 % * % ) & % 0 switch. case. break - default 0 P + 2 % * % ) & % 0 & - 0 - & ) % 5 % 0 5 +� % ) %

� � � � � � � � ��

C - � - 0 $ & - ) % + 2 & + ? & % ( % / ' - $ % * $ ' * % + ( 1 G # ( + 5 - 3 & 0 " 4 ( - & + 0 . ' 0 % " 5 + % ? + & %+ + 2 - & % 5 + & $ + " 5 # $ # + " % *

switch ( expressão ) {

{ case literal : instrução [ break;] }

[default : instrução [ break;] ]

Page 59: Introdução à Programação de Computadores em Java

� �

> Q - 0 $ & - ) % 2 + & 2 % * % ) & % 0 0 ' % 0 + L ' " $ # + " % ( - " 3 + 5 + 0 - ? ' # " 3 - 3 & + � + 5 - $ F 5 # ? + �

switch(n) { case 1: System.out.println(“Um”); break; case 2: System.out.println(“Dois”); break; case 3: case 4: System.out.print(“Três ou quatro: ”);

System.out.println(“Nem mais nem menos.”); break; default: System.out.println(“Ou negativo, ou zero, ou muitos ”); }

B M 0 $ & - ) % ' ( 2 & + ? & % ( % / ' - 5 ' ( 2 % & - $ - & / ' % * # 3 % 3 # ) + % ' ( % $ * % 0 0 # L # $ % � P +

" ' ( D & # $ % 5 - � > � " + 0 0 - ? ' # " 3 - 3 - & ( + 0 � � � J � � � % ' . O � � � � - 5 � + $ & - . � � � B� � K ' L # $ # - " 3 - . � J � � � � � + ( . � > � � � � ' # 3 + � + ( � M G - ( 2 * + 5 - ' 3 # * # , % � P + �

Classificação (0..20): 18 <Enter> Muito Bom

J M 0 $ & - ) % ' ( 2 & + ? & % ( % / ' - 2 - 5 - % + ' 3 # * # , % 5 + & ' ( % + 2 - & % � P + % & # 3 ( D 3 # $ % - .

0 - ? ' # 5 % ( - " 3 - . 2 - 5 - + 0 5 + # 0 + 2 - & % " 5 + 0 0 + H & - + 0 / ' % # 0 / ' - & & - % * # , % & - 0 0 %+ 2 - & % � P + � 2 & + ? & % ( % 5 - ) - & 1 5 - 2 + # 0 % 2 & - 0 - " 3 % & + & - 0 ' * 3 % 5 + 5 % + 2 - & % � P + " +- $ & P � 2 & + ? & % ( % " P + 5 - ) - & 1 2 - & ( # 3 # & % 5 # ) # 0 P + 2 + & , - & + M G - ( 2 * + 5 -' 3 # * # , % � P + �

Escolha uma operação ( + - * / ): / <Enter> Primeiro operando: 7 <Enter> Segundo operando: 2 <Enter>

7 / 2 = 3.5

Page 60: Introdução à Programação de Computadores em Java

� �

� � � � � � � �

I " + 0 0 % - G 2 - & # " $ # % 5 - 2 & + ? & % ( % � P + 2 + 5 - % # " 5 % " P + 0 - & ( ' # 3 % . ( % 0 � 1 ) # ( + 0( ' # 3 + 0 - G - ( 2 * + 0 + " 5 - L + # " - $ - 0 0 1 & # + & - 2 - 3 # & . & - 2 - 3 # & - & - 2 - 3 # & ' ( $ + " � ' " 3 + 5 -# " 0 3 & ' � � - 0 � + & - G - ( 2 * + . / ' % " 5 + % H + & 5 % ( + 0 + 3 - ( % 5 % & - 0 + * ' � P + 5 - 2 & + H * - ( % 0 .' ( 5 + 0 2 & # ( - # & + 0 - G - & $ � $ # + 0 / ' - L # , - ( + 0 L + # + 5 - $ % * $ ' * % & % 0 + ( % 5 + 0 � �

2 & # ( - # & + 0 " 4 ( - & + 0 " % 3 ' & % # 0 � # " 3 - # & + 0 2 + 0 # 3 # ) + 0 � �

H / + , ; . 9 2 4 / . � 5 0 8 0 9 / 2 4 0 3 . / + 9 . 3 � 8 9 2 / 0 2 9 . 3 6 I / 0 9 . 3 6 + 4 5 9 + 2 3 C �

� D , 5 1 . ; 9 + / + - . 9 9 0 3 8 . 6 7 0 6 4 0 C �

� �� � � � � � � � � � � � � � � � � � � � � � � � � � � � � �

� � - 5 # & % + ' 3 # * # , % 5 + & + ) % * + & 5 - �

> ! " # $ # % & 0 + ( % � �

B ! " # $ # % & $ + " 3 % 5 + & � �

J C - 2 - 3 # & + 0 2 % 0 0 + 0 0 - ? ' # " 3 - 0 - " / ' % " 3 + $ + " 3 % 5 + & �

� �J �

I $ 3 ' % * # , % & 0 + ( % � 0 + ( % � 0 + ( % � $ + " 3 % 5 + &J > I $ 3 ' % * # , % & $ + " 3 % 5 + & � $ + " 3 % 5 + & � $ + " 3 % 5 + & � �

O M 0 $ & - ) - & 0 + ( %

� � � � � � � � � � ��

� � � � � � � � � � � � � � � � � � �

� � � � � � � � � � � � � � � � � �

� � � ! " ! � � � � � # $ �

� � � � � %

� � � � � � � � � �%

& ! � �

' $ �

� ( �

Page 61: Introdução à Programação de Computadores em Java

� �

� 4 2 8 . 7 0 9 0 8 0 4 2 E F . 9 0 8 9 0 3 0 6 4 + 7 + 5 3 + 7 + 6 0 3 4 0 + , ; . 9 2 4 / . � + 2 3 0 9 6 0 - 0 3 3 J 9 2 +/ 5 2 4 + 3 0 / 5 2 4 + 3 � 0 � 0 3 >

M G # 0 3 - ' ( % # " 0 3 & ' � P + / ' - 2 - & ( # 3 - # ( 2 * - ( - " 3 % & 5 # & - $ 3 % ( - " 3 - - 0 3 - 3 # 2 + 5 -& - 2 - 3 # � P + + ' 5 - $ # $ * + M 0 0 % # " 0 3 & ' � P + D ' ( % 5 % 0 # " 0 3 & ' � � - 0 5 + 3 # 2 + # 3 - & % 5 + & -$ 7 % ( % � 0 - while

K - L + & ( + 0 % ' ( 5 # $ # + " 1 & # + ) - & # L # $ % ( + 0 / ' - # 3 - & % & 0 # ? " # L # $ % & - 2 - 3 # &+ ' ) + * 3 % & % L % , - &

� � � � � � � � � �while� 2 6 3 4 9 5 E F . : � 3 � 0 � 0 3 4 + 6 4 + - T + / + 7 + - 2 - , . ?

while4 0 / + 3 0 ; 5 2 6 4 0 3 2 6 4 + 1 0 >

I 2 % * % ) & % # " ? * - 0 % while 0 # ? " # L # $ % ; 8 � � A 8 � = � + $ # $ * + while. instrução & - 2 & - 0 - " 3 % ' ( %# " 0 3 & ' � P + 0 # ( 2 * - 0 + ' $ + ( 2 + 0 3 % - 0 - & 1 - G - $ ' 3 % 5 % & - 2 - 3 # 5 % ( - " 3 - - " / ' % " 3 + + ) % * + &5 % - G 2 & - 0 0 P + * F ? # $ % expressão_lógica L + & true

� 2 & + ? & % ( % $ + ( - � % 2 + & 3 - 0 3 % & +) % * + & 5 - � � � � � � - 0 - - 0 F 0 - - 0 0 - ) % * + & L + & true D / ' - - G - $ ' 3 % instrução

� + & 3 % " 3 + . 0 - expressão_lógica L + & # " # $ # % * ( - " 3 - false. + $ # $ * + " P + 0 - & 1 - G - $ ' 3 % 5 +

K % H - " 5 + # 0 3 + . % 3 & % 5 ' � P + 2 % & % % * # " ? ' % ? - ( 5 - 2 & + ? & % ( % � P + 5 + % * ? + & # 3 ( + % $ # ( % D3 & # ) # % * �

// Implementação directa do algoritmo que soma os primeiros N naturais // Versão 1 import java.util.*; public class SomaN { public static void main(String [] args) { int n; Scanner sc = new Scanner(System.in); System.out.print(“N: “); n = sc.nextInt(); int soma=0, contador = 1; while (contador <= n) { soma = soma + contador; contador = contador + 1; } System.out.print(“Soma: “ + soma);

while (expressão_lógica ) instrução

Page 62: Introdução à Programação de Computadores em Java

� �

} �

� ; . 9 + + 4 C 8 . 7 0 9 A + / . 3 0 1 0 9 - 2 4 + 9 + , ; 5 6 3 7 . 3 . 8 0 9 + 7 . 9 0 3 7 + , 2 6 ; 5 + ; 0 / 8 + 9 +3 2 / 8 , 2 D 2 - + 9 . 6 . 3 3 . - � 7 2 ; . �

// Implementação do algoritmo que soma os primeiros 10 inteiros positivos // Versão 2 import java.util.*; public class SomaN { public static void main(String [] args) { int n, soma=0, contador = 1; Scanner sc = new Scanner(System.in); System.out.print(“N: “); n = sc.nextInt(); while (contador <= n) soma += contador++; System.out.print(“Soma: “ + soma); } } . 0 1 0 / 8 , . < + � + 9 2 J � 0 ,

contador3 0 9 � 0 8 + 9 + - . 6 4 9 . , + 9 + - . 6 7 2 E F . 7 . - 2 - , .

while>

� 3 4 0 4 2 8 . 7 0 3 2 4 5 + E F . C / 5 2 4 . D 9 0 � 5 0 6 4 0 0 / 8 9 . ; 9 + / + E F . > � . 3 0 9 0 1 0 - 5 4 + 7 . .8 9 . ; 9 + / + D + � . 3 0 ; 5 2 6 4 0 �

soma começa por valer 0 contador começa por valer 1 N: 3 <Enter> n passa a ter o valor 10 (1 <= 3) ? // true soma = 0 + 1 = 1 contador passa a valer 2 (2 <= 3) ? // true soma = 1 + 2 = 3 contador passa a valer 3 (3 <= 3) ? // true soma = 3 + 3 = 6 contador passa a valer 4 (4 <= 3) ? // false fim do ciclo while

Page 63: Introdução à Programação de Computadores em Java

� �

Escreve soma: 6 � � � � � � � � � � � 8 9 0 4 0 6 7 0 � 3 0 D + � 0 9 5 / 8 9 . ; 9 + / + 8 + 9 + 0 3 - 9 0 � 0 9 6 . 0 - 9 F . 38 9 2 / 0 2 9 . 3 6 I / 0 9 . 3 6 + 4 5 9 + 2 3 8 + 9 0 3 0 . 3 9 0 3 8 0 - 4 2 � . 3 � 5 + 7 9 + 7 . 3 > � 1 0 / 8 , . 7 05 4 2 , 2 � + E F . �

N: 3 <Enter> 2 4 4 16 6 36 * + , - . / . + 6 4 0 3 0 3 4 0 8 9 . ; 9 + / + 5 4 2 , 2 � + . - 2 - , .

while>

// Programa que apresenta os primeiros N naturais pares e seus quadrados public class ParN { public static void main(String [] args) { int n, n2, par = 2; System.out.print("N: "); n = Le.umInt(); n2 = 2*n; while (par <= n2) { System.out.println(par + " " + par*par); par += 2; } } } � , ; 5 / + 3 6 . 4 + 3 3 . B 9 0 0 3 4 0 - � 7 2 ; . �

� � + 9 2 J � 0 , � 5 0 - . 6 4 9 . , + + - . 6 7 2 E F . 7 . - 2 - , . C + � + 9 2 J � 0 ,par

> � 3 4 + � + 9 2 J � 0 ,- . / 0 E + 8 . 9 4 . / + 9 . � + , . 9 7 . 8 9 2 / 0 2 9 . 6 I / 0 9 . 8 + 9 6 + 4 5 9 + , : � � � < N ? 0 0 / - + 7 +2 4 0 9 + E F . 4 . / + . � + , . 9 7 . 6 I / 0 9 . 8 + 9 3 0 ; 5 2 6 4 0 < 8 . 9 D . 9 E + 7 + 2 6 3 4 9 5 E F .

par += 2: .

� 5 0 C + / 0 3 / + - . 2 3 + 7 . � 5 0par = par + 2

? >

� 2 & + ? & % ( % ' 3 # * # , % ' ( % ) % & # 1 ) - * % ' G # * # % & n2 = n*2 ! 0 3 + - ) # 3 % / ' - + 2 & + ? & % ( % 3 - " 7 %

/ ' - L % , - & - 0 3 % ( ' * 3 # 2 * # $ % � P + 5 - $ % 5 % ) - , / ' - 3 - 0 3 % + ) % * + & 5 % - G 2 & - 0 0 P + / ' -$ + " 3 & + * % + $ # $ * +

M M C � � � ! � K�

! ( 2 * - ( - " 3 - ' ( 2 & + ? & % ( % / ' - - 0 $ & - ) % " + - $ & P + $ % & % $ 3 - & �. + " 4 ( - & + 5 -) - , - 0 2 - 5 # 5 + 2 - * + ' 3 # * # , % 5 + &

Page 64: Introdução à Programação de Computadores em Java

� �

2. Q - 0 - " ) + * ) % ' ( 2 & + ? & % ( % / ' - - 0 $ & - ) % % 3 % H ' % 5 % 5 - ' ( 5 - 3 - & ( # " % 5 + " 4 ( - & + M G - ( 2 * + 5 - ' 3 # * # , % � P + �

Número inteiro: 9 <Enter> 9 x 1 = 9 9 x 2 = 18 9 x 3 = 27 9 x 4 = 36 9 x 5 = 45 9 x 6 = 54 9 x 7 = 63 9 x 8 = 72 9 x 9 = 81 9 x 10 = 90

B M 0 $ & - ) % ' ( 2 & + ? & % ( % / ' - $ % * $ ' * - + L % $ 3 + & # % * 5 - ' ( 5 % 5 + " 4 ( - & +

J M 0 $ & - ) % ' ( 2 & + ? & % ( % / ' - % 2 & - 0 - " 3 - + " 4 ( - & + 5 - % * ? % & # 0 ( + 0 � + ' 5 � ? # 3 + 0 � 5 -

' ( " 4 ( - & + " % 3 ' & % * n � M G - ( 2 * + 5 - ' 3 # * # , % � P + �

Número inteiro: 123 <Enter> 123 tem 3 dígitos

O

M 0 $ & - ) % ' ( 2 & + ? & % ( % / ' - * - # % ' ( ) % * + & # " 3 - # & + $ + " 0 3 # 3 ' � 5 + % 2 - " % 0 2 + & , - & + 0 -' " 0 - / ' - 5 - 3 - & ( # " - / ' % " 3 + 0 , - & + 0 - / ' % " 3 + 0 ' " 0 - 0 0 - ) % * + & # " 3 - # & + 2 + 0 0 ' # M G - ( 2 * + 5 - ' 3 # * # , % � P + �

Número com dígitos binários: 101100 <Enter> 3 zeros e 3 uns

� M 0 $ & - ) % ' ( 2 & + ? & % ( % / ' - * - # % ' ( ) % * + & # " 3 - # & + - / ' - 5 - 3 - & ( # " - % L & - / ' " $ # %

� # - . / ' % " 3 # 5 % 5 - � 5 - $ % 5 % ' ( 5 + 0 0 - ' 0 5 # L - & - " 3 - 0 % * ? % & # 0 ( + 0 M G - ( 2 * + 5 -' 3 # * # , % � P + �

Número inteiro: 30032005 <Enter> zeros: 4 dois: 1 três: 2 cincos: 1

Page 65: Introdução à Programação de Computadores em Java

� �

� ! ( 2 * - ( - " 3 - ' ( 2 & + ? & % ( % / ' - 5 - 0 - " 7 - " + - $ & P ' ( / ' % 5 & % 5 + ' 0 % " 5 +

$ % & % $ 3 - & - 0 � � � * % 5 + 5 + / ' % 5 & % 5 + 5 - ) - 0 - & 2 - 5 # 5 + % + ' 3 # * # , % 5 + & K ' ? - 0 3 P + �& - * - ( H & - � 0 - 5 + - G - & $ � $ # + � M G - ( 2 * + 5 - ' 3 # * # , % � P + � lado: 5 <Enter> ***** * * * * * *

***** � � � � � � � � � �

for � , C / 7 . - 2 - , .while

< 0 1 2 3 4 0 / / + 2 3 7 . 2 3 4 2 8 . 3 7 0 - 2 - , . 3 0 / � + � + � . - 2 - , .for

0 .- 2 - , .

do-while> � 3 3 0 - E 0 3 3 0 ; 5 2 6 4 0 3 + 8 9 0 3 0 6 4 + / - + 7 + 5 / 7 0 , 0 3 >

� $ # $ * + for D ' ( 5 + 0 $ # $ * + 0 ( % # 0 ' 3 # * # , % 5 + 0 � 1 / ' - $ + & & - 0 2 + " 5 - % ' ( % $ - & 3 %% H & - ) # % � P + 5 % # " 0 3 & ' � P + while

I # ( 2 * - ( - " 3 % � P + 5 + % * ? + & # 3 ( + / ' - 0 + ( % + 0 2 & # ( - # & + 0 N " % 3 ' & % # 0 . / ' - ) # ( + 0% " 3 - & # + & ( - " 3 - . 2 + 5 - 0 - & L - # 3 % ' 0 % " 5 + ' ( % # " 0 3 & ' � P + for. 5 % 0 - ? ' # " 3 - L + & ( %

// Implementação directa do algoritmo que soma os primeiros N naturais // usando a instrução for. // Versão 1.1 import java.util.*; public class SomaN { public static void main(String [] args) { int n, soma=0; Scanner sc = new Scanner(System.in); System.out.print(“N: “); n = sc.nextInt(); for (int contador = 1; contador <= n; contador = contador +1) soma = soma+contador; System.out.print(“Soma: “ + soma); } }

I 5 - 0 $ & # � P + L + & ( % * 5 % # " 0 3 & ' � P + for D �

- D - / ' # ) % * - " 3 - % �

for ( [inicialização] ; [teste] ; [actualização] ) instrução

Page 66: Introdução à Programação de Computadores em Java

� �

� + 3 . 0 1 2 3 4 + < + 2 6 3 4 9 5 E F . � � � � � � � � � � � � � C 0 1 0 - 5 4 + 7 + 5 / + I 6 2 - + � 0 � + 6 4 0 3 7 . - 2 - , .8 9 . 8 9 2 + / 0 6 4 0 7 2 4 . - . / 0 E + 9 > � / - + 7 + 2 4 0 9 + E F . 7 . - 2 - , . < . � + , . 9 7 +

expressão

testeC - + , - 5 , + 7 . > � + 3 . 0 3 4 + 0 1 8 9 0 3 3 F . 6 F . 0 1 2 3 4 + 6 . 6 . 3 3 . - � 7 2 ; . < . � + � +

+ 3 3 5 / 2 9 J . � + , . 9true

> � 0 0 3 4 0 � + , . 9 D . 9true

< C 0 1 0 - 5 4 + 7 +instrução

3 0 ; 5 2 7 . 7 +0 1 8 9 0 3 3 F .

actualização> � - 2 - , . 4 0 9 / 2 6 + � 5 + 6 7 . . 4 0 3 4 0 + � + , 2 + 9

false>

* 2 8 2 - + / 0 6 4 0 < � � � � � � � � � � � � � C 5 / + 2 6 3 4 9 5 E F . 7 0 2 6 2 - 2 + , 2 � + E F . 7 . - 2 - , . : 6 . 6 . 3 3 .0 1 0 / 8 , .

int contador =1? <

testeC + - . 6 7 2 E F . 7 0 4 0 9 / 2 6 + E F . 7 . - 2 - , . : 6 . 6 . 3 3 .

0 1 0 / 8 , . <contador <= n

? 0actualização

- . 9 9 0 3 8 . 6 7 0 + 5 / + 2 6 3 4 9 5 E F . � 5 0 7 0 � 0 3 0 9D 0 2 4 + 0 / - + 7 + 2 4 0 9 + E F . 7 . - 2 - , . : 6 . 6 . 3 3 . 0 1 0 / 8 , . <

contador = contador +1? >

� 2 / 8 . 9 4 + 6 4 0 6 . 4 + 9 � 5 0 4 . 7 . 3 . 3 0 , 0 / 0 6 4 . 3 7 + 2 6 3 4 9 5 E F .for

3 F . . 8 - 2 . 6 + 2 3 . 5D + - 5 , 4 + 4 2 � . 3 > � 3 4 . 4 . 9 6 + + 2 6 3 4 9 5 E F . / 5 2 4 . � 0 9 3 J 4 2 , < � � � < 8 . 7 0 3 0 9 5 4 2 , 2 � + 7 + 0 /� J 9 2 + 3 3 2 4 5 + E 0 3 > � 1 0 / 8 , . 7 0 - 2 - , . 2 6 D 2 6 2 4 . �

for(;;) /* Ciclo infinito */

M M C � � � ! �

& - � - 0 $ & - ) % . ' 0 % " 5 + ' ( % # " 0 3 & ' � P + L + & . % ) - & 0 P + > � 5 + $ F 5 # ? + / ' - $ % * $ ' * % %0 + ( % 5 + 0 � 2 & # ( - # & + 0 " % 3 ' & % # 0

� 8 9 . ; 9 + / + � 5 0 � 2 / . 3 + 6 4 0 9 2 . 9 / 0 6 4 0 � 5 0 0 3 - 9 0 � 0 6 . 0 - 9 F . 3 8 9 2 / 0 2 9 . 3N

6 I / 0 9 . 3 6 + 4 5 9 + 2 3 8 + 9 0 3 0 . 3 9 0 3 8 0 - 4 2 � . 3 � 5 + 7 9 + 7 . 3 < 0 3 - 9 2 4 . 5 3 + 6 7 . 5 / +2 6 3 4 9 5 E F .

for< 4 0 / . 3 0 ; 5 2 6 4 0 + 3 8 0 - 4 . �

// Programa que apresenta os primeiros N naturais pares e seus quadrados // versão 2: usando uma instrução for.

import java.util.*; public class ParN { public static void main(String [] args) {

[inicialização] while ( teste | true ) {

instrução [actualização]

}

Page 67: Introdução à Programação de Computadores em Java

� �

Scanner sc = new Scanner(System.in); System.out.print("N: "); int n = sc.nextInt();

for (int n2= 2*n, par=2; par <= n2 ; par += 2) System.out.println(par + " " + par*par); } }

C - 2 % & - $ + ( + " % # " 0 3 & ' � P + for % $ # ( % . - 0 3 % ( + 0 % # " # $ # % * # , % & 5 ' % 0 ) % & # 1 ) - # 0 n2=2*n -par=2

� + ( + ) # ( + 0 . - 0 3 % # " # $ # % * # , % � P + 0 - & 1 L - # 3 % ' ( % 4 " # $ % ) - ,

Page 68: Introdução à Programação de Computadores em Java

� �

� � � � � � � � � �do-while

� 3 - 2 - , . 3while

0for

+ 8 9 2 / 0 2 9 + - . 2 3 + � 5 0 D + � 0 / C 4 0 3 4 + 9 + - . 6 7 2 E F . 7 04 0 9 / 2 6 + E F . > � 4 0 9 - 0 2 9 . 0 I , 4 2 / . - 2 - , . 4 0 3 4 + + - . 6 7 2 E F . 7 0 4 0 9 / 2 6 + E F . + 8 0 6 + 3+ 8 � 3 4 0 9 D 0 2 4 . 8 0 , . / 0 6 . 3 5 / + 2 4 0 9 + E F . 0 - T + / + � 3 0

do-while>

0 3 4 0 - 2 - , . < 8 9 2 / 0 2 9 . +instrução

C 0 1 0 - 5 4 + 7 + 0 3 � 7 0 8 . 2 3 C � 5 0 . � + , . 9 7 +0 1 8 9 0 3 3 F . C 4 0 3 4 + 7 . > � 0 0 3 4 0 � + , . 9 D . 9

true< . - 2 - , . 9 0 8 0 4 0 � . , 4 + 6 7 . + D + � 0 9

instrução0 + 4 0 3 4 + 9

expressão_lógica> � 0 . � + , . 9 7 0

expressão_lógicaD . 9 D + , 3 . <

. - 2 - , . 4 0 9 / 2 6 + 0 . 8 9 . ; 9 + / + - . 6 4 2 6 5 + 6 + 2 6 3 4 9 5 E F . � 5 0 + 8 + 9 0 - 0 2 / 0 7 2 + 4 + / 0 6 4 0+ 3 0 ; 5 2 9 + . - 2 - , . > � . 9 4 + 6 4 . < + 2 6 3 4 9 5 E F . � 5 0 0 3 4 J 7 0 6 4 9 . 7 . - 2 - , . C 0 1 0 - 5 4 + 7 +8 0 , . / 0 6 . 3 5 / + � 0 � > � 3 4 + 2 6 3 4 9 5 E F . C 8 + 9 4 2 - 5 , + 9 / 0 6 4 0 I 4 2 , � 5 + 6 7 . + - . 6 7 2 E F . 7 0 4 0 9 / 2 6 + E F . 7 0 8 0 6 7 07 0 5 / � + , . 9 8 0 7 2 7 . + . 5 4 2 , 2 � + 7 . 9 > 0 3 4 0 - + 3 . < 0 3 4 0 � + , . 9 4 0 9 J � 5 0 3 0 9 , 2 7 . < 8 0 , ./ 0 6 . 3 5 / + � 0 � >

� + 9 + 7 + 9 5 / 0 1 0 / 8 , . < � . , 4 0 / . 3 + . 6 . 3 3 . 8 9 . ; 9 + / + � 5 0 - + , - 5 , + + J 9 0 + 7 0 5 /- A 9 - 5 , . > � � 0 9 3 F . / + 2 3 9 0 - 0 6 4 0 � 5 0 7 0 3 0 6 � . , � 0 / . 3 8 + 9 + 0 3 4 0 8 9 . ; 9 + / + D . 2 �

// Programa para cálculo da área A, de um círculo de raio r : r>= 0 e A = pi * r *r // versão 2.1 – O utilizador é informado se introduzir um raio menor do que 0. import java.util.*; public class AreaCirculo { public static void main (String [] args) { Scanner sc = new Scanner(System.in); System.out.print(“Escreva o valor do raio: “); float raio = sc.nextFloat(); if(raio>=0) { double area = Math.PI * raio * raio; System.out.print(“Área do circulo de raio “+raio+ “é “ + area); } else System.out.println(“O raio não pode ser negativo”); }

}

do instrução while (expressão_lógica) ;

Page 69: Introdução à Programação de Computadores em Java

� �

0 3 4 + � 0 9 3 F . < . 8 9 . ; 9 + / + 4 0 9 / 2 6 + 3 0 / 8 9 0 � 5 0 . 5 4 2 , 2 � + 7 . 9 2 6 3 0 9 2 9 5 / 9 + 2 .6 0 ; + 4 2 � . > � 0 � 5 2 3 0 9 / . 3 7 + 9 + T 2 8 � 4 0 3 0 + . 5 4 2 , 2 � + 7 . 9 7 0 - . 9 9 2 ; 2 9 . 3 0 5 0 6 ; + 6 . <8 . 7 0 9 0 / . 3 5 3 + 9 + 2 6 3 4 9 5 E F .

do-while< 7 + 3 0 ; 5 2 6 4 0 D . 9 / + �

// Programa para cálculo da área A, de um círculo de raio r : r>= 0 e A = pi * r *r // versão 3 – Pede um raio tantas vezes quantas as necessárias até que o // raio seja >=0. import java.util.*; public class AreaCirculo { public static void main (String [] args) { float raio; Scanner sc = new Scanner(System.in); do { System.out.print(“Escreva um valor de raio positivo: “); raio = sc.nextFloat(); } while(raio < 0); // Aqui garantidamente raio >= 0;

// caso contrário o ciclo não teria terminado. double area = Math.PI * raio * raio; System.out.print(“Área do circulo de raio “+raio+ “é “ + area); }

}

� . 7 0 / . 3 + 4 C 9 0 D 2 6 + 9 0 3 4 0 8 9 . ; 9 + / + 7 0 D . 9 / + + + � 2 3 + 9 . 5 4 2 , 2 � + 7 . 9 3 0 / 8 9 0 � 5 02 6 3 0 9 2 9 5 / 9 + 2 . 6 0 ; + 4 2 � . >

// Programa para cálculo da área A, de um círculo de raio r : r>= 0 e A = pi * r *r // versão 3.1 – Pede um raio tantas vezes quantas as necessárias até que o // raio seja >=0; O utilizador é informado se introduzir um raio negativo. import java.util.*; public class AreaCirculo { public static void main (String [] args) { float raio; Scanner sc = new Scanner(System.in); do { System.out.print(“Escreva um valor de raio positivo: “); raio = sc.nextFloat(); if (raio<0) System.out.println(“O raio não pode ser negativo”); } while(raio < 0); // Aqui garantidamente raio >= 0;

// caso contrário o ciclo não teria terminado. double area = Math.PI * raio * raio; System.out.print(“Área do circulo de raio “+raio+ “é “ + area); }

}

Page 70: Introdução à Programação de Computadores em Java

� �

� . / . 3 0 9 2 + . 6 . 3 3 . - � 7 2 ; . 3 0 3 � 8 5 7 C 3 3 0 / . 3 5 3 + 9 + 2 6 3 4 9 5 E F .while

� 0 1 0 / 8 , . � 5 0 + - + B + / . 3 7 0 � 0 9 < - . 9 9 0 3 8 . 6 7 0 � 5 4 2 , 2 � + E F . 4 A 8 2 - + 7 + 2 6 3 4 9 5 E F .

do-while> . 0 6 4 + 6 4 . < 6 + 7 + 6 . 3 2 / 8 0 7 0 7 0 5 3 + 9 0 3 4 + 2 6 3 4 9 5 E F . 0 / 8 9 . ; 9 + / + 3

- . / . . � 5 0 - + , - 5 , + + 3 . / + 7 . 3N

8 9 2 / 0 2 9 . 3 6 I / 0 9 . 3 6 + 4 5 9 + 2 3 < 0 / B . 9 + < 8 + 9 +0 3 4 0 3 - + 3 . 3 < + 2 6 3 4 9 5 E F .

for3 0 � + + / + 2 3 + 7 0 � 5 + 7 + >

// Implementação directa do algoritmo que soma os primeiros N naturais // usando a instrução do-while // Versão 1.2 import java.util.*; public class SomaN { public static void main(String [] args) { Scanner sc = new Scanner(System.in); System.out.print(“N: “); int n = sc.nextInt(); int contador =1, soma=0; do{ contador = contador +1; soma = soma+contador; } while(contador <= n); System.out.print(“Soma: “ + soma); } }

� � � � � � � � � � � � � � � � � � � � � � � � � � � �

� 3 2 6 3 4 9 5 E 0 3break

0continue

3 F . - T + / + 7 + 3 2 6 3 4 9 5 E 0 3 7 0 3 + , 4 . 2 6 - . 6 7 2 - 2 . 6 + , <8 0 , + 3 9 + � 0 3 � 5 0 � 0 9 0 / . 3 � J 7 0 3 0 ; 5 2 7 + �

break 6K F D 2 - & ( # 3 # 5 % " % # " 0 3 & ' � P + switch. while, for - do-while - 0 - & ) - 2 % & % 2 % 0 0 % & +$ + " 3 & + * + 2 % & % % 2 & # ( - # & % # " 0 3 & ' � P + % 0 - ? ' # & % + 5 + $ + & 2 + 5 % # " 0 3 & ' � P + / ' - %$ + " 3 - " 7 % � # ( + 0 % ' 3 # * # , % � P + 3 � 2 # $ % 5 - 0 3 % # " 0 3 & ' � P + / ' % " 5 + % H + & 5 % ( + 0 + switch

continue;

K F D 2 - & ( # 3 # 5 % " + $ + & 2 + 5 + 0 # 3 - & % 5 + & - 0 �while. for + ' do-while� ! " 3 - & & + ( 2 - %# 3 - & % � P + % $ 3 ' % * . 2 % 0 0 % " 5 + 2 % & % % # 3 - & % � P + 0 - ? ' # " 3 - C % & % ( - " 3 - ' 0 % & - ( + 0 - 0 3 %# " 0 3 & ' � P + 2 + & / ' - 5 # ( # " ' # % * - ? # H # * # 5 % 5 - 5 + $ F 5 # ? +

Page 71: Introdução à Programação de Computadores em Java

� �

M M C � � � ! � K�

C - 2 # 3 % + 0 - G - & $ � $ # + 0 � % O 5 - 0 3 - $ % 2 � 3 ' * + . ' 0 % " 5 + # " 0 3 & ' � � - 0 for

� � Q - 0 - " ) + * ) % ' ( 2 & + ? & % ( % / ' - 2 - 5 - ' ( " 4 ( - & + " % 3 ' & % * " + 0 # 0 3 - ( % 5 -

" ' ( - & % � P + 5 - $ # ( % * - $ + " ) - & 3 - � + 2 % & % H # " 1 & # + � 2 & + ? & % ( % 5 - ) - & 1 ) % * # 5 % & %0 ' % - " 3 & % 5 % M G - ( 2 * + 5 - - G - $ ' � P + �

Número natural: 9 <Enter> 9 em binário: 1001

� � I * 3 - & - + 2 & + ? & % ( % % " 3 - & # + & 5 - L + & ( % % $ + " ) - & 3 - & + " 4 ( - & + 2 - 5 # 5 + 2 % & %

/ ' % * / ' - & + ' 3 & % H % 0 - M G - ( 2 * + 5 - - G - $ ' � P + �

Número: 9 <Enter> Base de conversão: 8 <Enter> 9 na base 8: 11

� > M 0 $ & - ) % ' ( 2 & + ? & % ( % / ' - ) % # 2 - 5 # " 5 + " 4 ( - & + 0 % + ' 3 # * # , % 5 + & % 3 D / ' - - 0 3 -

# " 3 & + 5 ' , % + " 4 ( - & + � � � + L # ( . + 2 & + ? & % ( % 5 - ) - % 2 & - 0 - " 3 % & % ( D 5 # % 5 + 0" 4 ( - & + 0 # " 3 & + 5 ' , # 5 + 0 � - G $ * ' # " 5 + + � � � M G - ( 2 * + 5 - ' 3 # * # , % � P + �

Insira uma série de números e termine-a com -1. : 5 <Enter>

: 11 <Enter> : 6 <Enter> : 8 <Enter> : -1 <Enter> Média: 7.5

� B � + 5 # L # / ' - + 2 & + ? & % ( % % " 3 - & # + & . 5 - ( + 5 + % % 2 & - 0 - " 3 % & + ( � " # ( + . ( 1 G # ( + -( D 5 # % 5 + 0 ) % * + & - 0 # " 0 - & # 5 + 0 M G - ( 2 * + 5 - ' 3 # * # , % � P + �

Insira uma série de números e termine-a com -1. : 5 <Enter>

: 11 <Enter> : 6 <Enter> : 8 <Enter> : -1 <Enter> Mínimo: 5 Média: 7.5

Page 72: Introdução à Programação de Computadores em Java

� �

Máximo: 11

� J M 0 $ & - ) % ' ( 2 & + ? & % ( % / ' - ) - & # L # / ' - 0 - ' ( " 4 ( - & + " % 3 ' & % * D + ' " P + 2 & # ( +� ' ( " 4 ( - & + " % 3 ' & % * D 2 & # ( + 0 - 0 F L + & 5 # ) # 0 � ) - * 2 + & � + ' 2 + & 0 # 2 & F 2 & # + � �2 & + ? & % ( % 5 - ) - & 1 ) % * # 5 % & % 0 ' % - " 3 & % 5 % M G - ( 2 * + 5 - ' 3 # * # , % � P + �

Número natural: 4 <Enter> 4 não é primo

� O M 0 $ & - ) % ' ( 2 & + ? & % ( % / ' - $ % * $ ' * - 3 + 5 + 0 + 0 5 # ) # 0 + & - 0 5 - ' ( " 4 ( - & + " % 3 ' & % * � 2 & + ? & % ( % 5 - ) - & 1 ) % * # 5 % & % 0 ' % - " 3 & % 5 % M G - ( 2 * + 5 - ' 3 # * # , % � P + �

Número natural: 24 <Enter> Divisores de 24: 1 2 3 4 6 8 12 24

Page 73: Introdução à Programação de Computadores em Java

� �

� � � � � � � � � � � � � � � � � � � � � � � �� ( % * # " ? ' % ? - ( 5 - 2 & + ? & % ( % � P + D ' ( 0 # 0 3 - ( % L + & ( % * 5 - 0 $ & # 3 + 2 - * % 0 ' % 0 # " 3 % G - -2 - * % 0 ' % 0 - ( � " 3 # $ % I 0 # " 3 % G - 5 - L # " - + % * L % H - 3 + - % 0 L & % 0 - 0 2 - & 3 - " $ - " 3 - 0 �* # " ? ' % ? - ( I 0 - ( � " 3 # $ % 5 - L # " - + 0 # ? " # L # $ % 5 + 5 - $ % 5 % ' ( % 5 - 0 0 % 0 L & % 0 - 0

I 0 # " 3 % G - 2 + 5 - 0 - & 5 - 0 $ & # 3 % 2 + & ' ( % ? & % ( 1 3 # $ % � # " 5 - 2 - " 5 - " 3 - 5 - $ + " 3 - G 3 + � � ( %? & % ( 1 3 # $ % # " $ * ' # ' ( $ + " � ' " 3 + 5 - 0 � ( H + * + 0 3 - & ( # " % # 0 � � ; . / ' - 2 - & 3 - " $ - ( �* # " ? ' % ? - ( � . ' ( $ + " � ' " 3 + 5 - 0 � ( H + * + 0 " P + 3 - & ( # " % # 0 - ' ( $ + " � ' " 3 + 5 - & - ? & % 00 # " 3 1 $ 3 # $ % 0 �2 & + 5 ' � � - 0 + ' 5 - & # ) % � � - 0 � � L + & ( % * # 0 ( + M � � � � � � � ; 8 � ; � � A � � � @� A � < = < : A � � @ : D ' ( 5 + 0 L + & ( % * # 0 ( + 0 ( % # 0 ' 3 # * # , % 5 + 0 2 % & % 5 - 0 $ & - ) - & ? & % ( 1 3 # $ % 0

M G - ( 2 * + 5 - - 0 2 - $ # L # $ % � P + 5 - & - L - # � � - 0 ' 0 % " 5 + M � � � �

entrada ::= camarão | ostras.

EBNF – Extended Backus Naur Formalism Uma notação EBNF é uma sequência regras. Cada regra tem uma parte esquerda, que define o seu nome, um sinal ::=, e pela parte direita, que define a sintaxe de uma linguagem em termos de símbolos terminais ou de símbolos não terminais da linguagem (i.e., outras regras). Na especificação das regras usaremos as seguintes convenções: Os símbolos terminais são escritos em minúsculas; Os símbolos não terminais são escritos em itálico e negrito; A barra vertical | separa alternativas; Os parênteses curvos ( e ) agrupam; Os parênteses rectos [ e ] indicam opcionalidade; As chavetas { e } identificam símbolos que podem ocorrer 0 ou mais

vezes; Em vez das chavetas, por vezes, usa-se o *. As reticências ... são usadas para indicar de-até As aspas “ “ denotam comentários Os sinais < e > identificam teclas

Page 74: Introdução à Programação de Computadores em Java

� �

sobremesa ::= gelado | fruta. fruta ::= maça | laranja | cerejas prato ::= bife | filetes vegetais ::= brocolos | cenouras

refeição ::= [entrada] prato (batatas | arroz) {vegetais} [sobremesa] C - L - # � � - 0 2 + 0 0 � ) - # 0 �

i.bife batatas ii.camarão filetes arroz brocolos brocolos brocolos cenouras

gelado iii.ostras bife arroz cerejas

� ( # 5 - " 3 # L # $ % 5 + & D + " + ( - 5 % 5 + % ' ( - * - ( - " 3 + 5 - 2 & + ? & % ( % . $ + ( + % 0 ) % & # 1 ) - # 0+ ' % 0 $ * % 0 0 - 0 M ( M � � � . % - 0 2 - $ # L # $ % � P + 5 - # 5 - " 3 # L # $ % 5 + & 2 % & % % * # " ? ' % ? - ( � % ) % D5 % 5 % 2 + & �

identificador ::= caracter { caracter | digito } caracter ::= letra | _ | $ digito ::= 0 | 1 | … | 9 letra ::= a | b | ....| z | A | B | ... | Z

Q - 0 3 % 5 - 0 $ & # � P + D % ? + & % $ * % & + / ' - ' ( # 5 - " 3 # L # $ % 5 + & $ + ( - � % 0 - ( 2 & - 2 + & ' ( % * - 3 & % .$ % & % $ 3 - & 0 ' H * # " 7 % 5 + � + ' 2 - * + $ # L & P + � � 3 % ( H D ( $ * % & + / ' - ' ( # 5 - " 3 # L # $ % 5 + & " P +$ + " 3 - ( - 0 2 % � + 0 . " - ( " - " 7 ' ( + ' 3 & + 3 # 2 + 5 - $ % & % $ 3 - & - 0 2 % & % % * D ( 5 + 0 - " ' ( - & % 5 + 0% $ # ( %

Page 75: Introdução à Programação de Computadores em Java

� �

Modularidade de funções � � � � � � � � � � � � � � � � � � � � � � � �� � � � � � � � � � � � � � � �� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �� � � � � � � � � � � � � � � � � � � � � � � � � �

5 + 6 7 . 0 3 - 9 0 � 0 / . 3

Math.sqrt (x*x+1) 0 3 4 + / . 3 + � � � � � � � � < + � � � � . 5 + � � � � � � + D 5 6 E F . 9 + 2 � � 5 + 7 9 + 7 + � 5 0

0 3 4 J 7 0 D 2 6 2 7 + 6 + - , + 3 3 0Math

>

� 5 + 6 7 . 0 3 - 9 0 � 0 / . 3

public static void main(String[] args) { System.out.print("Primeiro programa em Java.");

}

0 3 4 + / . 3 + � � � � � � + D 5 6 E F . 8 9 2 6 - 2 8 + , 7 0 5 / + 7 + 7 + - , + 3 3 0 > � . / . � 2 / . 3 < +8 + , + � 9 + � - T + � 0

main3 2 ; 6 2 D 2 - + 8 9 2 6 - 2 8 + , 0 / � 6 ; , 3 >

� . 9 4 + 6 4 . < � J 4 2 � 0 / . 3 . 8 . 9 4 5 6 2 7 + 7 0 7 0 5 4 2 , 2 � + 9 0 7 0 7 0 D 2 6 2 9 D 5 6 E 0 3 > � � 5 08 . 7 0 9 0 / . 3 0 6 4 F . 7 2 � 0 9 / + 2 3 3 . B 9 0 D 5 6 E 0 3 � 5 0 6 . 3 3 0 � + I 4 2 , � J 9 2 + 3 02 / 8 . 9 4 + 6 4 0 3 - . 2 3 + 3 > � 5 0 3 4 0 3 - . / . . � 5 0 C 5 / + D 5 6 E F . � 5 0 - + 9 + - 4 0 9 A 3 4 2 - + 37 0 � 0 4 0 9 5 / + � � � D 5 6 E F . . 5 � . 9 � 5 5 3 + 9 D 5 6 E 0 3 � 5 0 3 4 0 3 - . / . 0 3 4 + 3 4 /� 5 0 3 0 9 9 0 3 8 . 6 7 2 7 + 3 >

� � � ! " #$

VI

Q

Page 76: Introdução à Programação de Computadores em Java

� �

� + 9 + 6 . 3 + � 5 7 + 9 6 + 6 . 3 3 + 7 2 3 - 5 3 3 F . � + / . 3 0 3 - 9 0 � 0 9 5 / 8 9 . ; 9 + / + � 5 0 - + , - 5 , 0 .6 I / 0 9 . 7 0 - . / B 2 6 + E 0 3 7 0

n0 , 0 / 0 6 4 . 3 + ; 9 5 8 + 7 . 3

m+

m< �

�� � 5 0 C 7 + 7 . 8 0 , +

3 0 ; 5 2 6 4 0 D . 9 / 5 , + �

� ���

���

�� ��

−=

� . / . . 3 0 , 0 / 0 6 4 . 3 7 0 8 9 . ; 9 + / + E F . 7 0 � 5 0 � J 7 2 3 8 . / . 3 8 . 7 0 / . 3 0 3 - 9 0 � 0 9 .3 0 ; 5 2 6 4 0 8 9 . ; 9 + / + �

// Programa que calcula o número de combinações de n elementos agrupados m a m // Versão 0 import java.util.*; public class Comb { public static void main(String [] arg) { int n, m; Scanner sc = new Scanner(System.in); System.out.print("N: "); n = sc.nextInt(); System.out.print("M: "); m = sc.nextInt(); int i, fn=1; for(i=1; i<=n; i++) fn = fn*i; int fm=1; for (i=1; i<=m; i++) fm = fm*i; int nm= m-n, fnm=1; for(i=1; i<= nm; i++) fnm = fnm*i; int comb = fn / (fn*fnm);

System.out.print(comb); }

}

� 0 4 2 � C 3 3 0 / . 3 5 3 + 7 . D 5 6 E 0 3 �

L >

� - � 7 2 ; . � 5 0 - + , - 5 , + . D + - 4 . 9 2 + , 4 0 9 2 + 3 2 7 . 0 3 - 9 2 4 . 5 / + I 6 2 - + � 0 � 0 8 . 7 0 9 2 +3 0 9 5 3 + 7 . 4 + 6 4 + 3 � 0 � 0 3 � 5 + 6 4 + 3 + 3 6 0 - 0 3 3 J 9 2 + 3 > � D 2 6 + , 7 0 - . 6 4 + 3 6 F . C 2 3 3 .� 5 0 D + � 0 / . 3 - . / + 3 D 5 6 E 0 3 7 0 0 6 4 9 + 7 + 0 3 + A 7 + * 0 9 A + / . 3 8 . 9 4 + 6 4 . 5 3 + 7 .5 / + 7 + 3 D . 9 / + 3 7 0 9 0 5 4 2 , 2 � + E F . 7 0 - � 7 2 ; . > � . 9 4 + 6 4 . + 3 � � � D 5 6 E 0 3 : � � � < + 3D 5 6 E 0 3 7 0 � � � � � � � � ? 8 0 9 / 2 4 0 / 9 0 5 4 2 , 2 � + 9 - � 7 2 ; . >

N >

� 8 9 . ; 9 + / + D 2 - + 9 2 + / + 2 3 3 2 / 8 , 0 3 0 / + 2 3 D J - 2 , 7 0 - . / 8 9 0 0 6 7 0 9 < � � � < D 2 - + 9 2 +/ + 2 3 � � � � � � / � 0 � 7 0 4 9 3 - 2 - , . 3 D . 9 < � 5 0 D + � 0 / 4 . 7 . 3 + / 0 3 / + - . 2 3 + <4 0 9 A + / . 3 4 9 3 - T + / + 7 + 3 � / 0 3 / + D 5 6 E F . > � . 9 4 + 6 4 . + 3 B . + 3 D 5 6 E 0 3+ 5 / 0 6 4 + / + , 0 ; 2 B 2 , 2 7 + 7 0 7 . - � 7 2 ; . >

Page 77: Introdução à Programação de Computadores em Java

� �

� >

� � � � � � � � � < 2 > 0 > < + - . 9 9 0 - E F . . 5 + - 4 5 + , 2 � + E F . 7 . 8 9 . ; 9 + / + 3 0 9 2 + 4 + / B C // + 2 3 D J - 2 , > � 0 + ; . 9 + 9 0 8 + 9 + 9 / . 3 � 5 0 . - 2 - , .

for8 . 7 0 - . / 0 E + 9 0 / N < 0 / � 0 �

7 0 - . / 0 E + 9 0 / L < - . / . 0 3 4 J 0 3 - 9 2 4 . + - 2 / + 0 � 5 2 3 0 9 / . 3 - . 9 9 2 ; 2 9 2 3 3 . <4 0 9 0 / . 3 7 0 - . 9 9 2 ; 2 9 - + 7 + 5 / 7 . 3 4 9 3 - 2 - , . 3 > � 0 4 2 � C 3 3 0 / . 3 5 3 + 7 . D 5 6 E 0 3 <0 3 4 + / 0 3 / + - . 9 9 0 - E F . 3 0 9 2 + D 0 2 4 + 6 5 / I 6 2 - . 0 B 0 / 7 0 D 2 6 2 7 . 3 A 4 2 . � 6 . - . 9 8 .7 + D 5 6 E F . � 5 0 2 / 8 , 0 / 0 6 4 + . D + - 4 . 9 2 + , > � . 9 4 + 6 4 . + 3 B . + 3 D 5 6 E 0 3 D + - 2 , 2 4 + / +/ + 6 5 4 0 6 E F . 7 . - � 7 2 ; . >

R >

� . 7 0 9 A + / . 3 4 0 9 9 0 8 + 9 4 2 7 . / 0 , T . 9 . 4 9 + B + , T . 7 0 8 9 . ; 9 + / + E F . 8 0 , . 4 0 / 8 . . 58 0 , + 3 8 0 3 3 . + 3 > � 6 � 5 + 6 4 . 3 0 8 9 . ; 9 + / + 5 / + D 5 6 E F . < - . / . + � 5 0 2 / 8 , 0 / 0 6 4 +. D + - 4 . 9 2 + , < - . 6 - 0 6 4 9 + / . � 6 . 3 + 8 0 6 + 3 6 0 3 3 + D 5 6 E F . 0 2 ; 6 . 9 + / . 3 4 . 7 . 3 . 3. 5 4 9 . 3 7 0 4 + , T 0 3 7 . 8 9 . ; 9 + / + >

5 / 8 9 . ; 9 + / + - . / � J 9 2 + 3 D 5 6 E 0 3 < - + 7 + D 5 6 E F . 8 . 7 0 3 0 9 4 9 + 4 + 7 + � � 0 � 0D 5 6 E 0 3 7 2 D 0 9 0 6 4 0 3 8 . 7 0 / 3 0 9 7 0 3 0 6 � . , � 2 7 + 3 8 . 9 8 9 . ; 9 + / + 7 . 9 0 3 7 2 D 0 9 0 6 4 0 3 <7 0 3 7 0 � 5 0 3 0 4 . / 0 / 8 9 0 - + 5 E 0 3 0 , 0 / 0 6 4 + 9 0 3 >

� . - . 6 - 0 6 4 9 + 9 / . � 6 . 3 + 8 0 6 + 3 6 5 / + 7 + 7 + D 5 6 E F . 7 0 - + 7 + � 0 � < 0 3 4 + / . 3 +7 2 / 2 6 5 2 9 + 8 . 3 3 2 B 2 , 2 7 + 7 0 7 0 - . / 0 4 0 9 0 9 9 . 3 >

� . 9 4 + 6 4 . < + 3 B . + 3 D 5 6 E 0 3 D + - 2 , 2 4 + / + 2 / 8 , 0 / 0 6 4 + E F . 0 9 0 7 5 � 0 / +. - . 9 9 6 - 2 + 7 0 0 9 9 . 3 7 0 8 9 . ; 9 + / + E F . �

� >

� . 7 0 9 A + / . 3 3 5 B 3 4 2 4 5 2 9 5 / + D 5 6 E F . 8 . 9 . 5 4 9 + � 5 0 D 2 � 0 3 3 0 + / 0 3 / + - . 2 3 + <4 + , � 0 � 7 0 5 / + D . 9 / + / + 2 3 0 D 2 - 2 0 6 4 0 < � 5 0 . 8 9 . ; 9 + / + - . 6 4 2 6 5 + 9 2 + + 8 9 . 7 5 � 2 9. 3 / 0 3 / . 3 9 0 3 5 , 4 + 7 . 3 >� > L >

� 3 4 . C 8 . 3 3 A � 0 , 7 0 3 7 0 � 5 0 + � � � �� � 7 + D 5 6 E F . 6 F . 3 0 + , 4 0 9 0 > 0 3 4 0- . 6 4 0 1 4 . < - T + / + 9 0 / . 3 2 6 4 0 9 D + - 0 + . 4 2 8 . 7 0 9 0 4 . 9 6 . < 6 . / 0 0 , 2 3 4 + 7 08 + 9 @ / 0 4 9 . 3 7 + D 5 6 E F . >

� > N > � 3 4 . C 8 . 3 3 A � 0 , 8 . 9 � 5 0 + D 5 6 E F . 0 3 - . 6 7 0 7 . � � � � < � � � < 7 . 3 0 55 4 2 , 2 � + 7 . 9 . 3 7 0 4 + , T 0 3 7 + 3 5 + 2 / 8 , 0 / 0 6 4 + E F . < � � � < 8 9 . 8 . 9 - 2 . 6 ++ B 3 4 9 + - E F . 7 0 - � 7 2 ; . �

� 0 4 2 � C 3 3 0 / . 3 5 3 + 7 . D 5 6 E 0 3 . 6 . 3 3 . 8 9 . ; 9 + / + 8 . 7 0 9 2 + 3 0 9 �

Page 78: Introdução à Programação de Computadores em Java

� �

// Programa que calcula o número de combinações de n elementos agrupados m a m // Versão 1 import java.util.*; public class Comb{ public static void main(String [] args) { int n, m, comb; Scanner sc = new Scanner(System.in); System.out.print("N: "); n = sc.nextInt(); System.out.print("M: "); m = sc.nextInt(); comb = factorial(n) / (factorial (m) * factorial(n-m)); System.out.print(comb); } public static int factorial(int n) { int f=1; for(int i=2; i<=n; i++) f *= i; return f; } } � % 0 % 0 ) % " 3 % ? - " 0 5 - ' 3 # * # , % � P + 5 - L ' " � � - 0 " P + 0 P + - G $ * ' 0 # ) % 0 5 % L ' " � P + L % $ 3 + & # % * M " 3 P + 2 + & / ' - " P + ' 0 % & 5 + ( - 0 ( + 2 & # " $ � 2 # + 2 % & % + 2 & F 2 & # + $ 1 * $ ' * + 5 % 0$ + ( H # " % � � - 0 � I 0 0 # ( . + 2 & + ? & % ( % 0 - & # % � // Programa que calcula o número de combinações de n elementos agrupados m a m // Versão 2 import java.util.*; public class Comb { public static void main(String [] args) { int n, m, comb; Scanner sc = new Scanner(System.in); System.out.print("N: "); n = sc.nextInt(); System.out.print("M: "); m = sc.nextInt(); comb = combinacoes(n, m); System.out.print(comb); }

Page 79: Introdução à Programação de Computadores em Java

� �

public static int combinacoes(int i, int j) { return factorial(i) / (factorial (j) * factorial(i-j)); } public static int factorial(int n) { int f=1; for(int i=2; i<=n; i++) f *= i; return f; } }

� . 7 0 / . 3 9 0 3 5 / 2 9 7 0 3 7 0 � J + , ; 5 / + 3 7 + 3 � + 6 4 + ; 0 6 3 7 + 5 4 2 , 2 � + E F . 7 0 D 5 6 E 0 3 �

� ' ( 2 % 0 0 + - ( 5 # & - $ � P + � & - ' 3 # * # , % � P + 5 - $ F 5 # ? + 6

I ' ( - " 3 % % * - ? # H # * # 5 % 5 - 5 - 3 + 5 + + 2 & + ? & % ( % 6 � % $ # * # 3 % % ( % " ' 3 - " � P + 6 � % $ # * # 3 % % # ( 2 * - ( - " 3 % � P + 6 C - 5 ' , % + $ + & & " $ # % 5 - - & & + 0 5 - 2 & + ? & % ( % � P + 6

N - ( + 0 2 + & 3 % " 3 + % / ' # ' ( 2 & # ( - # & + ( - $ % " # 0 ( + 2 % & % % H 0 3 & % $ � P + 5 - $ F 5 # ? + I% H 0 3 & % $ � P + + ' ( + 5 ' * % & # 5 % 5 - 5 - L ' " � � - 0 2 - & ( # 3 - & - 5 ' , # & % $ + ( 2 * - G # 5 % 5 - 5 - ' (2 & + H * - ( % / ' - 2 + 0 0 % 0 - & & - 0 + * ) # 5 + 2 + & ' ( % L ' " � P + 2 & # " $ # 2 % * ! 0 3 + D $ + " 0 - ? ' # 5 +2 + & 5 - $ + ( 2 + 0 # � P + 5 + 2 & + H * - ( % + & # ? # " % * - ( 2 & + H * - ( % 0 ( % # 0 L 1 $ - # 0 & - 0 + * ) - & $ + (L ' " � � - 0 ( % # 0 0 # ( 2 * - 0 � + ( + H - ( " + 0 & - $ + & 5 % ( + 0 5 - / ' % " 5 + L % * % ( + 0 5 %& - 0 + * ' � P + 5 - 2 & + H * - ( % 0 . % 5 - $ + ( 2 + 0 # � P + 5 - ' ( 2 & + H * - ( % - ( 2 & + H * - ( % 0 ( % # 00 # ( 2 * - 0 D ' ( % 5 % 0 " + 0 0 % 0 2 & # " $ # 2 % # 0 L - & & % ( - " 3 % 0 5 - 3 & % H % * 7 +

� � � � � � � � � � � � � �� 0 D 2 6 2 9 5 / + D 5 6 E F . 3 2 ; 6 2 D 2 - + B + 3 2 - + / 0 6 4 0 + 4 9 2 B 5 2 9 5 / + 2 6 3 4 9 5 E F . - . / 8 . 3 4 + +5 / 2 7 0 6 4 2 D 2 - + 7 . 9 < � � � < + . 6 . / 0 7 + D 5 6 E F . > � 3 4 . 8 . 7 0 3 0 9 D 0 2 4 . - . / . 6 . 0 1 0 / 8 , .3 0 ; 5 2 6 4 0 �

public static int factorial(int n) {

int f=1;

for(int i=2; i<=n; i++) f *= i;

return f;

}

� 3 4 . C �

Page 80: Introdução à Programação de Computadores em Java

� �

L �

� 3 8 0 - 2 D 2 - + � 3 0 � 5 0 / 8 . 7 0 9 J 5 3 + 9 + D 5 6 E F . . 5 < 8 . 9 . 5 4 9 + 3 8 + , + � 9 + 3 < � 5 + , C +3 5 + � � � � � � � � � � . 5 . 3 0 5 6 A � 0 , 7 0 + - 0 3 3 . > � . 7 0 / . 3 4 0 9 � 5 + 4 9 . 6 A � 0 2 37 2 D 0 9 0 6 4 0 3 / + 3 8 + 9 + � J � + / . 3 � 0 9 + 8 0 6 + 3 7 . 2 3 7 0 3 3 0 3 4 2 8 . 3 > . 0 1 0 / 8 , .+ - 2 / + < + 8 + , + � 9 + � - T + � 0

public2 6 7 2 - + � 5 0 + D 5 6 E F . 8 . 7 0 3 0 9 5 3 + 7 + 8 . 9

� 5 + , � 5 0 9 - , 2 0 6 4 0 7 + - , + 3 3 0 > � 3 4 . C < + D 5 6 E F . C � 2 3 A � 0 , 0 / 4 . 7 . . , + 7 . . 6 7 0 +- , + 3 3 0 D . 9 � 2 3 A � 0 , > H / + . 5 4 9 + 8 . 3 3 2 B 2 , 2 7 + 7 0 3 0 9 2 + 5 3 + 9 + 8 + , + � 9 + � - T + � 0

private< . � 5 0 - . 9 9 0 3 8 . 6 7 0 9 2 + + . 6 A � 0 , 7 0 + - 0 3 3 . 8 9 2 � + 7 . > � 6 A � 0 , 7 0 + - 0 3 3 .

8 9 2 � + 7 . 3 2 ; 6 2 D 2 - + � 5 0 + D 5 6 E F . 3 � 8 . 7 0 3 0 9 5 3 + 7 + 8 . 9 D 5 6 E 0 3 7 + / 0 3 / +- , + 3 3 0 > � + - 0 3 3 . 8 9 2 � + 7 . C I 4 2 , 8 + 9 + 7 0 D 2 6 2 9 D 5 6 E 0 3 + 5 1 2 , 2 + 9 0 3 > � 3 D 5 6 E 0 3+ 5 1 2 , 2 + 9 0 3 3 F . D 5 6 E 0 3 � 5 0 3 0 9 � 0 / 8 + 9 + - . 6 3 4 9 5 2 9 . 5 4 9 + 3 D 5 6 E 0 3 / + 3 � 5 08 . 9 3 2 3 � 6 F . 4 / 2 6 4 0 9 0 3 3 0 8 + 9 + . 5 4 2 , 2 � + 7 . 9 >

N �

� . 6 4 2 6 5 + 9 0 / . 3 + 5 3 + 9 + 8 + , + � 9 + � - T + � 0static

0 - . 6 4 2 6 5 + 9 0 / . 3 + 7 0 2 1 + 9 +6 0 - 0 3 3 J 9 2 + � 5 3 4 2 D 2 - + E F . 8 + 9 + / + 2 3 4 + 9 7 0 >

� �

� 6 7 2 - + � 3 0 . 4 2 8 . 7 0 9 0 4 . 9 6 . <int

6 . - + 3 . 7 0 3 4 0 0 1 0 / 8 , . > � 8 . 3 3 A � 0 , 4 0 9D 5 6 E 0 3 � 5 0 6 F . 9 0 4 . 9 6 + / 6 0 6 T 5 / � + , . 9 < - . / . C . - + 3 . 7 0 4 . 7 + 3 + 3D 5 6 E 0 3

main> 0 3 3 0 - + 3 . < 2 3 3 . 7 0 � 0 3 0 9 2 6 7 2 - + 7 . 5 3 + 6 7 . + 8 + , + � 9 + � - T + � 0

void> � . 9 9 + � 0 3 T 2 3 4 � 9 2 - + 3 0 3 4 0 4 2 8 . 7 0 D 5 6 E F . - . 3 4 5 / + 3 0 9 - T + / + 7 .

� � � � � � � � < � � � � � � . 5 � � �� � � � � � � >R �

� 3 8 0 - 2 D 2 - + � 3 0 . 2 7 0 6 4 2 D 2 - + 7 . 9 : . 5 6 . / 0 ? 7 + D 5 6 E F . >

� �

� 6 7 2 - + � 3 0 + , 2 3 4 + 7 0 8 + 9 @ / 0 4 9 . 3 D . 9 / + 2 3 B 0 / - . / . . 3 3 0 5 3 4 2 8 . 3 > . - + 3 . < +D 5 6 E F . D + - 4 . 9 2 + , 4 0 / + 8 0 6 + 3 5 / 8 + 9 @ / 0 4 9 . < + � + 9 2 J � 0 ,

n< 7 . 4 2 8 . 2 6 4 0 2 9 . >

� � � 2 6 + , / 0 6 4 0 7 0 3 - 9 0 � 0 � 3 0 . - . 9 8 . 7 + D 5 6 E F . > � T + / + � 3 0 - . 9 8 . 7 + D 5 6 E F . +4 . 7 . . � 5 0 0 3 4 J 0 6 4 9 0 + 3 - T + � 0 4 + 3 8 9 2 6 - 2 8 + 2 3 >

� � � � � � � � � � � � � � � � � � � �I ) % & # 1 ) - * n / ' - % 2 % & - $ - " % 5 - L # " # � P + 5 % L ' " � P + factorial $ 7 % ( % � 0 - � A < � : ; � < = � = < : A �

+ ' 0 # ( 2 * - 0 ( - " 3 - 2 % & � ( - 3 & + � 0 2 % & � ( - 3 & + 0 L + & ( % # 0 0 P + + 0 " + ( - 0 # " 3 - & " + 0 5 + 0) % * + & - 0 / ' - 0 P + 2 % 0 0 % 5 + 0 � L ' " � P + " + ( + ( - " 3 + 5 % 0 ' % $ 7 % ( % 5 %

� � + , . 9 7 + � + 9 2 J � 0 ,i� 5 0 C 5 3 + 7 . 6 . / . / 0 6 4 . 7 + - T + / + 7 + � D 5 6 E F . - T + / + � 3 0

� � � � � � � � � � . 5 � � � � � � � > + + , 4 5 9 + 0 / � 5 0 + D 5 6 E F . C - T + / + 7 + .8 + 9 @ / 0 4 9 . D . 9 / + , 9 0 - 0 B 0 5 / + - � 8 2 + 7 . � + , . 9 7 . 8 + 9 @ / 0 4 9 . 9 0 + , : 6 . 0 1 0 / 8 , . <

n 9 0 - 0 B 0 5 / + - � 8 2 + 7 . � + , . 9 ; 5 + 9 7 + 7 . 0 /

i? > � 3 4 . 3 2 ; 6 2 D 2 - + � 5 0 . 3 � + , . 9 0 3 7 . 3

Page 81: Introdução à Programação de Computadores em Java

� �

+ 9 ; 5 / 0 6 4 . 3 3 F . 8 9 2 / 0 2 9 . - + , - 5 , + 7 . 3 7 0 8 . 2 3 . 3 � + , . 9 0 3 0 6 - . 6 4 9 + 7 . 3 3 F .- . 8 2 + 7 . 3 8 + 9 + . 3 8 + 9 @ / 0 4 9 . 3 D . 9 / + 2 3 7 + D 5 6 E F . > � 0 3 4 0 8 9 . - 0 3 3 . 7 J � 3 0 . 6 . / 07 0 8 + 3 3 + ; 0 / 7 0 + 9 ; 5 / 0 6 4 . 3 8 . 9 � + , . 9 . 5 8 . 9 - � 8 2 + > � 3 3 2 / < + + , 4 0 9 + E F . 7 . � + , . 96 . 3 8 + 9 @ / 0 4 9 . 3 6 F . 3 0 9 0 D , 0 - 4 0 6 . 3 + 9 ; 5 / 0 6 4 . 3 >

� % & % & - 3 + & " % & ' ( ) % * + & . % 0 L ' " � � - 0 ' 0 % ( % # " 0 3 & ' � P + return � ( % L ' " � P + 2 + 5 - 3 - &

) 1 & # % 0 # " 0 3 & ' � � - 0 return I L ' " � P + 3 - & ( # " % % 2 F 0 % - G - $ ' � P + 5 + 2 & # ( - # & + return

3 # 2 + 5 % - G 2 & - 0 0 P + / ' - 0 - 0 - ? ' - % + return 3 - & 1 5 - 0 - & $ + " ) - & 3 � ) - * " + 3 # 2 + 5 - & - 3 + & " +5 % L ' " � P +

I # " 0 3 & ' � P + return 3 - ( % 0 - ? ' # " 3 - 0 # " 3 % G - �

� 7 % ( % � 0 - A @ @ � 8 A � � < A 5 - ' ( % L ' " � P + % + 0 - ' " + ( - - � * # 0 3 % 5 - % & ? ' ( - " 3 + 0 . $ + ( %- 0 2 - $ # L # $ % � P + 5 + 0 0 - ' 0 3 # 2 + 0 - " + ( - 0

� � � � � � � � � �� � � �� � � �

K - ( 2 & - / ' - " - $ - 0 0 1 & # + 2 + 5 - ( + 0 5 - $ * % & % & ) % & # 1 ) - # 0 5 - " 3 & + 5 - ' ( % L ' " � P + . 5 %( - 0 ( % L + & ( % / ' - % 0 2 + 5 - ( + 0 5 - $ * % & % & 5 - " 3 & + 5 - / ' % * / ' - & H * + $ + � + - G - ( 2 * + 5 +L % $ 3 + & # % * . % ) % & # 1 ) - * f - 0 3 1 5 - $ * % & % 5 % 5 - " 3 & + 5 % L ' " � P + . $ 7 % ( % " 5 + � 0 - 2 + & # 0 0 +) % & # 1 ) - * * + $ % * � L ' " � P +

� + " 0 # 5 - & - ( + 0 % 0 - ? ' # " 3 - L ' " � P + L % $ 3 + & # % * ( + 5 # L # $ % 5 % �

public static int factorial(int n) { int f=1; System.out.println(n); for(int i=2; i<=n; i++) f *= i; return f; }

- + 0 - ? ' # " 3 - H * + $ + 5 - $ F 5 # ? + 5 - ' ( % + ' 3 & % L ' " � P + / ' % * / ' - & . % ( H % 0 5 % $ * % 0 0 -Comb �

{ int n=1, m=2, fact;

return [ expressão ] ;

Page 82: Introdução à Programação de Computadores em Java

� �

System.out.println(n); fact = factorial(n+m); System.out.println(n); System.out.println(fact); }

� 0 1 0 - 5 E F . 7 0 3 4 0 B , . - . 8 9 . ; 9 + / + 8 9 . 7 5 � 2 9 J . 3 0 ; 5 2 6 4 0 9 0 3 5 , 4 + 7 . �

1 3 1 6 � 0 � + / . 3 �

L �

� 7 0 - , + 9 + 7 + + � + 9 2 J � 0 ,n< , . - + , + . B , . - . < 0 2 6 2 - 2 + , 2 � + 7 + + L �

N �

� 7 0 - , + 9 + 7 + + � + 9 2 J � 0 ,m

< , . - + , + . B , . - . < 0 2 6 2 - 2 + , 2 � + 7 + - . / . � + , . 9 N �

� �

� 7 0 - , + 9 + 7 + + � + 9 2 J � 0 , , . - + , + . B , . - . <fact

R �

� 0 3 - 9 2 4 . . � + , . 9 7 0n< L < 6 . 0 - 9 F �

� �

� - + , - 5 , + 7 . . � + , . 9 7 . 8 + 9 @ / 0 4 9 . 9 0 + , 7 + D 5 6 E F . D + - 4 . 9 2 + , < . B 4 0 6 7 . � 3 0 .� + , . 9 � �

� �

� � + , . 9 � C - . 8 2 + 7 . 8 + 9 + . + 9 ; 5 / 0 6 4 . 7 + D 5 6 E F . D + - 4 . 9 2 + , <n

� �

� 2 6 2 - 2 + 7 + + 0 1 0 - 5 E F . 7 + D 5 6 E F . D + - 4 . 9 2 + ,+ >

� 7 0 - , + 9 + 7 + + � + 9 2 J � 0 ,

f< , . - + , � D 5 6 E F . < 0 2 6 2 - 2 + , 2 � + 7 + - . / .

� + , . 9 L �

B >

� 0 3 - 9 2 4 . . � + , . 9 7 . + 9 ; 5 / 0 6 4 .n< � < 6 . 0 - 9 F �

- >

� 0 1 0 - 5 4 + 7 . . - 2 - , .for

7 >

� 9 0 4 . 9 6 + 7 . . � + , . 9 + - 4 5 + , 7 0f< � �

0 >

� 0 1 0 - 5 E F . 7 + D 5 6 E F . 4 0 9 / 2 6 + - . / + , 2 B 0 9 4 + E F . 7 + / 0 / � 9 2 +. 6 7 0 0 3 4 2 � 0 9 + / ; 5 + 9 7 + 7 . 3 . 3 � + , . 9 0 3 7 + � + 9 2 J � 0 , , . - + ,

f0 7 .

+ 9 ; 5 / 0 6 4 .n

M �

� � + , . 9 � < 9 0 4 . 9 6 + 7 . 8 0 , + D 5 6 E F . < C - . 8 2 + 7 . 8 + 9 + + � + 9 2 J � 0 ,fact;

� �

� 0 3 - 9 2 4 . . � + , . 9 7 0n< L < 6 . 0 - 9 F �

L K � � 0 3 - 9 2 4 . . � + , . 9 7 0

fact< � < 6 . 0 - 9 F �

L L � � 0 1 0 - 5 E F . 7 . B , . - . 4 0 9 / 2 6 + - . / + , 2 B 0 9 4 + E F . 7 + / 0 / � 9 2 + . 6 7 00 3 4 2 � 0 9 + / ; 5 + 9 7 + 7 . 3 . 3 � + , . 9 0 3 7 + 3 � + 9 2 J � 0 2 3 , . - + 2 3

n<m

< 0fact

>

� . � 5 0 + - + B + / . 3 7 0 � 0 9 < 7 0 � 0 3 0 9 - , + 9 . � 5 0 � 5 0 9 . + 9 ; 5 / 0 6 4 . � 5 0 9 + � + 9 2 J � 0 ,, . - + , 7 + D 5 6 E F . 3 � 0 1 2 3 4 0 / 0 6 � 5 + 6 4 . + D 5 6 E F . 0 3 4 J 0 / 0 1 0 - 5 E F . > � + / 0 3 / +

Page 83: Introdução à Programação de Computadores em Java

� �

/ + 6 0 2 9 + < + 3 � + 9 2 J � 0 2 3 , . - + 2 3 + . B , . - .n<

m0

f3 � 0 1 2 3 4 0 / 0 6 � 5 + 6 4 . . B , . - .

0 3 4 2 � 0 9 0 / 0 1 0 - 5 E F . >

� 0 � 0 3 0 9 2 ; 5 + , / 0 6 4 0 - , + 9 . � 5 0 0 / B . 9 + 4 0 6 T + / . / 0 3 / . 6 . / 0n< + � + 9 2 J � 0 ,

, . - + , + . B , . - . 0 . + 9 ; 5 / 0 6 4 . 7 + D 5 6 E F . 4 / 4 0 / 8 . 3 7 0 � 2 7 + 0 0 3 8 + E . 3 7 0+ 9 / + � 0 6 + / 0 6 4 . 7 2 D 0 9 0 6 4 0 3 > � 8 . 9 0 3 4 + 9 + � F . � 5 0 � 5 + 6 7 . . � + , . 9 7 + � + 9 2 J � 0 ,, . - + , + . B , . - .

nC 0 3 - 9 2 4 . 4 0 / . 3 L 0 � 5 + 6 7 . . � + , . 9 7 . + 9 ; 5 / 0 6 4 . 7 + D 5 6 E F . C

0 3 - 9 2 4 . 4 0 / . 3 � >

� � � � � � � �� � � � � % * $ % " $ - 5 - ' ( % ) % & # 1 ) - * D % , + " % 5 - $ F 5 # ? + - ( / ' - - 0 0 % ) % & # 1 ) - * - 0 3 1 % $ - 0 0 � ) - *

• � % * $ % " $ - 5 + 0 % & ? ' ( - " 3 + 0 5 - ' ( % L ' " � P + D + $ + & 2 + 5 % L ' " � P + 6

• � % * $ % " $ - 5 - ) % & # 1 ) - # 0 + ' 5 - $ * % & % 5 % 0 " ' ( H * + $ + 3 - & ( # " % " + L # ( 5 + H * + $ +

� � �� � � � � � � � � � �� � � � � � �� � � � � � � � � �� + 9 + � 5 0 8 . 3 3 + / . 3 4 2 9 + 9 4 . 7 . . 8 9 . � 0 2 4 . 7 + 5 4 2 , 2 � + E F . 7 0 D 5 6 E 0 3 4 0 / . 3 � 5 0- . 6 3 4 9 5 2 9 � � � D 5 6 E 0 3 > � 3 4 . C D 5 6 E 0 3 / 0 / 0 , T . 9 0 / + � � � � � � � � 7 . 6 . 3 3 .- � 7 2 ; . >

� 3 - + 9 + - 4 0 9 A 3 4 2 - + 3 � 5 0 + 3 B . + 3 D 5 6 E 0 3 2 6 - , 5 0 / + 3 3 0 ; 5 2 6 4 0 3 �

H / + D 5 6 E F . 7 0 � 0 4 0 9 + 3 8 9 . 8 9 2 0 7 + 7 0 3 7 0 - + 2 1 + 8 9 0 4 + < 2 > 0 > < 8 + 9 + � 5 0 3 0 � +5 4 2 , 2 � J � 0 , C 3 5 D 2 - 2 0 6 4 0 - . 6 T 0 - 0 9 + 3 0 6 4 9 + 7 + 3 0 3 + A 7 + 3 < - . 6 T 0 - 0 9 . � 5 0 D + � �

/ + 3 C 2 9 9 0 , 0 � + 6 4 0 3 + B 0 9 - . / . + D 5 6 E F . 0 3 4 J 2 / 8 , 0 / 0 6 4 + 7 + >

� . 9 4 + 6 4 . C / 5 2 4 . 2 / 8 . 9 4 + 6 4 0 7 . - 5 / 0 6 4 + 9 / . 3 7 0 � 2 7 + / 0 6 4 0 + 3 D 5 6 E 0 3 <7 0 3 2 ; 6 + 7 + / 0 6 4 0 D + � 0 6 7 . - . 6 3 4 + 9 5 / + 8 0 � 5 0 6 + 7 0 3 - 9 2 E F . 7 + 4 + 9 0 D + +7 0 3 0 / 8 0 6 T + 9 8 0 , + D 5 6 E F . < B 0 / - . / . + , 2 3 4 + 7 0 + 9 ; 5 / 0 6 4 . 3 0 3 0 53 2 ; 6 2 D 2 - + 7 . < 0 6 4 9 0 . 5 4 9 . 3 + 3 8 0 - 4 . 3 9 0 , 0 � + 6 4 0 3 >

H / + D 5 6 E F . 7 0 � 0 3 0 9 D . 9 4 0 / 0 6 4 0 - . 0 3 + < � � � < 7 0 � 0 9 0 + , 2 � + 9 5 / + I 6 2 - + 0 B 0 /7 0 D 2 6 2 7 + 4 + 9 0 D + >

Page 84: Introdução à Programação de Computadores em Java

� �

N - & - ( + 0 / ' - ) + * 3 % & % - 0 3 - % 0 0 ' " 3 + 5 % � ' % * # 5 % 5 - ( % # 0 � L & - " 3 -

� � � � � � � � �

L >

� 3 - 9 0 � + 0 4 0 3 4 0 5 / + D 5 6 E F . � 5 0 9 0 4 . 9 6 0 . 3 2 6 + , 7 0 5 / 6 I / 0 9 . �

N >

� 3 - 9 0 � + 0 4 0 3 4 0 5 / + D 5 6 E F . � 5 0 � 0 9 2 D 2 � 5 0 3 0 5 / 6 I / 0 9 . 2 6 4 0 2 9 . C A / 8 + 9 �

� >

� 3 - 9 0 � + 0 4 0 3 4 0 5 / + D 5 6 E F . � 5 0 � 0 9 2 D 2 � 5 0 3 0 5 / 6 I / 0 9 . 6 + 4 5 9 + , 3 5 8 0 9 2 . 9 +5 / C . 5 6 F . 8 9 2 / . : 5 / 6 I / 0 9 . 6 + 4 5 9 + , 3 5 8 0 9 2 . 9 + 5 / C 8 9 2 / . 3 0 3 � D . 97 2 � 2 3 A � 0 , 8 . 9 L 0 8 . 9 3 2 8 9 � 8 9 2 . ? >

R >

� 3 - 9 0 � + 5 / 8 9 . ; 9 + / + � 5 0 + 8 9 0 3 0 6 4 0 . 3N

8 9 2 / 0 2 9 . 3 6 I / 0 9 . 3 6 + 4 5 9 + 2 38 9 2 / . 3 > H 4 2 , 2 � 0 + D 5 6 E F . - 9 2 + 7 + 6 . 0 1 0 9 - A - 2 . N >

� > � 0 0 3 - 9 0 � + . 8 9 . ; 9 + / + � 5 0 7 0 3 0 6 T + 6 . 0 - 9 F 5 / � 5 + 7 9 + 7 . 7 0 - + 9 + - 4 0 9 0 3 > �

- + 9 + - 4 0 9 0 . . , + 7 . 7 . � 5 + 7 9 + 7 . 7 0 � 0 3 0 9 8 0 7 2 7 . + . 5 4 2 , 2 � + 7 . 9 > H 4 2 , 2 � 0D 5 6 E 0 3 > � 1 0 / 8 , . 7 0 5 4 2 , 2 � + E F . �

caracter: z <Enter> lado: 3 <Enter> zzz z z zzz

� � �� � � � � � � � � � � � � � � � �� �� � � Q + 2 + " 3 + 5 - ) # 0 3 % ( % 3 - ( 1 3 # $ + . ' ( % L ' " � P + 5 # , � 0 - & - $ ' & 0 # ) % 0 - L + & 5 - L # " # 5 % - (3 - & ( + 0 5 - * % 2 & F 2 & # % Q - # ? ' % * ( + 5 + . - ( 2 & + ? & % ( % � P + ' ( % L ' " � P + D & - $ ' & 0 # ) % 0 -0 - $ 7 % ( % & % 0 # 2 & F 2 & # %

� ( % * ? + & # 3 ( + 5 # , � 0 - & - $ ' & 0 # ) + / ' % " 5 + - " $ + " 3 & % ' ( % 0 + * ' � P + 2 % & % ' ( 2 & + H * - ( %& - 0 + * ) - " 5 + ' ( % + ' ( % # 0 # " 0 3 � " $ # % 0 ( % # 0 0 # ( 2 * - 0 5 + 2 & + H * - ( % + & # ? # " % * � 0% * ? + & # 3 ( + 0 & - $ ' & 0 # ) + 0 0 P + # ( 2 * - ( - " 3 % 5 + 0 2 + & L ' " � � - 0 & - $ ' & 0 # ) % 0 - % 0 L ' " � � - 0& - $ ' & 0 # ) % 0 5 % 2 & + ? & % ( % � P + $ + & & - 0 2 + " 5 - ( � 0 5 - L # " # � � - 0 & - $ ' & 0 # ) % 0 5 % 0 L ' " � � - 0( % 3 - ( 1 3 # $ % 0

N % * ) - , % L ' " � P + & - $ ' & 0 # ) % . ( % # 0 ) - , - 0 ' 0 % 5 % $ + ( + - G - ( 2 * + - ( - 0 3 ' 5 + 0 5 -& - $ ' & 0 # ) # 5 % 5 - 0 - � % % L ' " � P + factorial

� + ( + ) # ( + 0 . + factorial 5 - ' ( " % 3 ' & % * n.5 - 0 # ? " % � 0 - 2 + & n! . - D 5 % 5 + 2 + & �

Page 85: Introdução à Programação de Computadores em Java

� �

���

=≥−

= �� ��

�� ���

�����

����

� ( % % * 3 - & " % 3 # ) % � # ( 2 * - ( - " 3 % � P + / ' - L # , - ( + 0 % " 3 - & # + & ( - " 3 - 2 % & % - 0 3 % L ' " � P + DH % 0 - % 5 % " % + H 0 - & ) % � P + 5 - / ' - + factorial 2 + 5 - 0 - & 5 - L # " # 5 + $ + ( + �

���

=≥−

= �� ��

�� �� ����

����

I # ( 2 * - ( - " 3 % � P + $ + & & - 0 2 + " 5 - D �public static int factorial (int n) { if (n==0) return 1;

� � + ' if ((n==0) || (n==1)) return n*factorial(n-1); }

� % & % $ % * $ ' * % & B - 0 3 % ) - & 0 P + & - $ ' & 0 # ) % - L - $ 3 ' % + 0 - ? ' # " 3 - - " $ % 5 - % ( - " 3 + 5 -+ 2 - & % � � - 0 �

factorial(3) 3 * factorial(2) 3 * 2 * factorial(1) 3 * 2 * 1 * factorial(0) 3 * 2 * 1 * 1 3 * 2 * 1 3 * 2 6

� + 5 - ( + 0 - G 2 & - 0 0 % & 0 - ( $ # $ * + 0 / ' % * / ' - & $ + ( 2 ' 3 % � P + / ' - - " ) + * ) % $ # $ * + 0 . ' 0 % " 5 +& - $ ' & 0 P +

Q % ( - 0 ( % L + & ( % . D 0 - ( 2 & - 2 + 0 0 � ) - * 3 & % " 0 L + & ( % & % ) - & 0 P + & - $ ' & 0 # ) % 5 - ' ( %L ' " � P + " ' ( % ) - & 0 P + # 3 - & % 3 # ) %

I & - $ ' & 0 # ) # 5 % 5 - 2 - & ( # 3 - � " + 0 L & - / ' - " 3 - ( - " 3 - - G 2 & - 0 0 % & % * ? + & # 3 ( + 0 $ + ( 2 * - G + 0 5 -' ( % L + & ( % $ + ( 2 % $ 3 % 0 - ( 0 % $ & # L # $ % & % - L # $ # " $ # % � - 0 ( + " + - G - ( 2 * + 0 # ( 2 * - 0 5 +factorial . % ' 3 # * # , % � P + 5 % & - $ ' & 0 # ) # 5 % 5 - 5 # 0 2 - " 0 + ' � " + 0 5 - ' 0 % & ) % & # 1 ) - # 0 * + $ % # 0 .0 # ( 2 * # L # $ % " 5 + % 0 0 # ( % 0 ' % # ( 2 * - ( - " 3 % � P +

Page 86: Introdução à Programação de Computadores em Java

� �

� + - " 3 % " 3 + . D " - $ - 0 0 1 & # + 3 - & - ( $ + " 3 % / ' - . / ' % " 5 + 0 - ' 0 % ' ( % L ' " � P + & - $ ' & 0 # ) % .- 0 3 % ( + 0 % ' 0 % & + @ � A � � � 5 + 0 # 0 3 - ( % / ' - 3 - & 1 ' ( 3 % ( % " 7 + 2 & + 2 + & $ # + " % * �2 & + L ' " 5 # 5 % 5 - 5 - & - $ ' & 0 P + I 2 & + L ' " 5 # 5 % 5 - 5 - & - $ ' & 0 P + $ + & & - 0 2 + " 5 - % + " 4 ( - & +( 1 G # ( + 5 - $ 7 % ( % 5 % 0 & - $ ' & 0 # ) % 0 5 % L ' " � P + % + * + " ? + 5 % $ + ( 2 ' 3 % � P + � + / ' -3 # 2 # $ % ( - " 3 - 5 - 2 - " 5 - 5 + 0 5 % 5 + 0 5 - - " 3 & % 5 % � � % & % $ - & 3 + 0 2 & + H * - ( % 0 . + - 0 2 % � +" - $ - 0 0 1 & # + 2 % & % ( % " 3 - & - 0 3 - @ � A � � 2 + 5 - # ( 2 - 5 # & + ' 0 + 5 % 0 + * ' � P + & - $ ' & 0 # ) %

Q - L + & ( % % 2 + 5 - & ( + 0 ? % & % " 3 # & . 2 + & # " 5 ' � P + ( % 3 - ( 1 3 # $ % . % $ + & & - $ � P + 5 % 0 " + 0 0 % 0L ' " � � - 0 & - $ ' & 0 # ) % 0 . - 0 3 % 0 3 - & P + 5 - 3 - & 5 ' % 0 2 & + 2 & # - 5 % 5 - 0 H 1 0 # $ % 0 �

� Q - ) - ( & - 0 + * ) - & ' ( $ % 0 + H % 0 - . / ' - D $ % & % $ 3 - & # , % 5 + 2 + & ' ( % $ + " 5 # � P + 5 -

3 - & ( # " % � P + + " 5 - D $ % * $ ' * % 5 + - G 2 * # $ # 3 % ( - " 3 - ' ( & - 0 ' * 3 % 5 + � " + $ % 0 + 5 +factorial $ + & & - 0 2 + " 5 - � * # " 7 % if (n==0) return 16

> I 0 $ 7 % ( % 5 % 0 & - $ ' & 0 # ) % 0 5 - ) - ( % 2 & - 0 - " 3 % & ) % * + & - 0 5 - % & ? ' ( - " 3 + 0 $ % 5 % ) - ,

( % # 0 2 - / ' - " + 0

� � � � � � � � � � � � � � � � �� �� � � � 0 6 3 + 9 7 0 / . 7 . 9 0 - 5 9 3 2 � . C < 0 / / 5 2 4 . 3 - + 3 . 3 < 5 / + D 0 9 9 + / 0 6 4 + D 5 6 7 + / 0 6 4 + ,8 + 9 + . 3 8 9 . ; 9 + / + 7 . 9 0 3 > 0 3 4 + 3 0 - E F . < � + / . 3 + 8 9 0 3 0 6 4 + 9 / + 2 3 4 9 3 0 1 0 / 8 , . 3� 5 0 9 0 � 5 0 9 0 / � 5 0 8 0 6 3 0 / . 3 7 0 / . 7 . 9 0 - 5 9 3 2 � . >

� � � � �� � � � � � � � � � � � � � � � � � � � � � �� 3 2 6 4 + 1 0 7 0 + , ; 5 / + 3 2 6 3 4 9 5 E 0 3 7 + 3 , 2 6 ; 5 + ; 0 6 3 7 0 8 9 . ; 9 + / + E F . C 7 0 D 2 6 2 7 +9 0 - 5 9 3 2 � + / 0 6 4 0 > � . 9 0 1 0 / 8 , . < 7 . � 5 0 � 2 / . 3 + 4 C + � 5 2 7 + , 2 6 ; 5 + ; 0 / 7 08 9 . ; 9 + / + E F . � + � + 8 . 7 0 / . 3 7 2 � 0 9 � 5 0 + 7 0 D 2 6 2 E F . 3 2 6 4 J - 4 2 - + 7 0 2 6 3 4 9 5 E F .

C �

instrução ::= ;

| expressão ; | { { expressão_lógica } } | if ( expressão_lógica ) instrução | if ( expressão_lógica ) instrução else instrução

| switch ( expressão ) {

Page 87: Introdução à Programação de Computadores em Java

� �

{ case literal : instrução [ break;] }

[default : instrução [ break;] ] }

| break ; | while (expressão_lógica ) instrução

| do instrução while ( expressão_lógica ) ; | for ( [inicialização] ; [teste] ; [actualização] ) instrução

| continue ; | return [ expressão ] ;

� 3 4 . C < 8 . 9 0 1 0 / 8 , . + 2 6 3 4 9 5 E F .while

C 7 0 D 2 6 2 7 + � - 5 3 4 + 7 . 8 9 � 8 9 2 . - . 6 - 0 2 4 . 7 02 6 3 4 9 5 E F . > H / + 2 6 3 4 9 5 E F .

while8 . 7 0 3 0 9 7 0 D 2 6 2 7 + - . / + 8 + , + � 9 +

while3 0 ; 5 2 7 .

7 0 5 / 8 + 9 6 4 0 3 2 3 - 5 9 � . + B 0 9 4 . < 3 0 ; 5 2 7 . 7 0 5 / + 0 1 8 9 0 3 3 F . , � ; 2 - + < 3 0 ; 5 2 7 . 7 05 / 8 + 9 6 4 0 3 2 3 - 5 9 � . D 0 - T + 7 . < 3 0 ; 5 2 7 . 7 0 5 / + 2 6 3 4 9 5 E F . : + � 5 + , 8 . 7 0 3 0 9 5 / +6 . � + 2 6 3 4 9 5 E F .

while? 0 + 3 3 2 / 8 . 9 7 2 + 6 4 0 �

0 3 4 0 - + 3 . 0 1 2 3 4 0 / � J 9 2 . 3 - + 3 . 3 B + 3 0 � 5 0 - . 9 9 0 3 8 . 6 7 0 / � 3 2 6 3 4 9 5 E 0 3 / + 2 33 2 / 8 , 0 3 7 + , 2 6 ; 5 + ; 0 / < - . / . + 2 6 3 4 9 5 E F . 6 5 , + . 5 .

break>

� � � � � � � � � � � � � � � � � �� 0 6 3 0 / . 3 6 . - . 6 - 0 2 4 . 7 0 � � � � � � � � > � / 0 5 B 2 3 + � � . 5 + / 2 6 T + 4 0 4 9 + � � 3 F ./ 0 5 3 + 6 4 0 8 + 3 3 + 7 . 3 > H / + 6 4 0 8 + 3 3 + 7 . C + , ; 5 C / � 5 0 C 8 + 2 7 . 8 + 2 7 . 8 + 2 < . 5 / F 07 . 8 + 2 7 + / F 0 7 + / F 0 < 0 8 . 9 + A D . 9 + > > > � 8 + 9 0 6 4 0 / 0 6 4 0 < 4 9 + 4 + � 3 0 7 0 5 / - . 6 - 0 2 4 .7 0 7 2 D A - 2 , 7 0 D 2 6 2 E F . > � . 6 4 5 7 . < 3 0 8 0 6 3 + 9 / . 3 7 0 D . 9 / + 9 0 - 5 9 3 2 � + 8 . 7 0 / . 37 0 D 2 6 2 � , . D + - 2 , / 0 6 4 0 5 4 2 , 2 � + 6 7 . + 8 0 6 + 3 . 3 - . 6 - 0 2 4 . 3 7 0 � � � 0 � < - . / . 3 03 0 ; 5 0 �

• K - L + & 2 % # 5 - � => D % " 3 - 2 % 0 0 % 5 + 5 - �

• K - L + & ( P - 5 - � => D % " 3 - 2 % 0 0 % 5 + 5 - �

• K - D 2 % # 5 - � . - � D % " 3 - 2 % 0 0 % 5 + 5 - � => D % " 3 - 2 % 0 0 % 5 + 5 - �

• K - D ( P - 5 - � . - � D % " 3 - 2 % 0 0 % 5 + 5 - � => D % " 3 - 2 % 0 0 % 5 + 5 - �

Page 88: Introdução à Programação de Computadores em Java

� �

� � � � � � � � � � � � � � �� � �� 3 7 5 + 3 D . 9 / + 3 / + 2 3 5 4 2 , 2 � + 7 + 3 7 0 9 0 8 9 0 3 0 6 4 + 9 - . 6 � 5 6 4 . 3 3 F . � : L ? 8 . 9 0 1 4 0 6 3 F . 0: N ? 8 . 9 - . / 8 9 0 0 6 3 F . > � 8 9 2 / 0 2 9 . / C 4 . 7 . 4 9 + 4 + � 3 0 7 0 5 / + 3 2 / 8 , 0 3 0 6 5 / 0 9 + E F .7 0 4 . 7 . 3 . 3 0 , 0 / 0 6 4 . 3 7 . - . 6 � 5 6 4 . > � . 9 0 1 0 / 8 , . < . - . 6 � 5 6 4 . � 8 . 7 0 3 0 97 0 D 2 6 2 7 . 0 / 0 1 4 0 6 3 F . 7 . 3 0 ; 5 2 6 4 0 / . 7 . �

{ }��

��

��

�=

/ + 3 4 + / B C / 8 . 7 0 3 0 9 7 0 D 2 6 2 7 . 0 / - . / 8 9 0 0 6 3 F . - . / . 3 0 6 7 . . � � � � � � � � �

� � � � � � � � � � � � � � � � � � � � > � . 9 / + , / 0 6 4 0 �

{ }� <∈= �

� 3 - . 6 � 5 6 4 . 3 4 + / B C / 8 . 7 0 / 3 0 9 7 0 D 2 6 2 7 . 3 8 . 9 2 6 7 5 E F . > � . / . 0 1 0 / 8 , . <� + / . 3 - . 6 3 2 7 0 9 + + 3 0 ; 5 2 6 4 0 7 0 D 2 6 2 E F . 8 + 9 + 5 / - 0 9 4 . - . 6 � 5 6 4 .

C�

• L 2 - & 3 - " $ - % �

• K - 1 2 - & 3 - " $ - % � . - " 3 P + 1 � L 3 % ( H D ( 2 - & 3 - " $ - % �

• " % 5 % ( % # 0 2 - & 3 - " $ - % �

� 3 4 + 3 � 9 0 ; 9 + 3 7 0 D 2 6 0 / . - . 6 � 5 6 4 .C

7 0 / + 6 0 2 9 + 2 6 7 5 4 2 � + > * 9 + 4 + � 3 0 7 0 5 /- . 6 - 0 2 4 . � 5 0 C / 5 2 4 . 8 + 9 0 - 2 7 . - . / . - . 6 - 0 2 4 . 7 0 9 0 - 5 9 3 2 � 2 7 + 7 0 < � 2 3 4 . � 5 00 3 4 + / . 3 + 7 0 D 2 6 2 9

C� - 5 3 4 + 7 0 3 2 8 9 � 8 9 2 . > � J + ; . 9 + < 7 0 � 5 0 - . 6 � 5 6 4 . C 0 3 4 0 � 5 0

0 3 4 + / . 3 + D + , + 9

� � � � � � � � �

� >

� 3 - 9 0 � + 0 4 0 3 4 0 5 / + D 5 6 E F . 9 0 - 5 9 3 2 � + � 5 0 - + , - 5 , 0 + 3 . / + 7 . 3 8 9 2 / 0 2 9 . 3N

6 + 4 5 9 + 2 3 >� >

� 3 - 9 0 � + 0 4 0 3 4 0 5 / + D 5 6 E F . 9 0 - 5 9 3 2 � + � 5 0 0 3 - 9 0 � + 5 / + , 2 6 T + - . / 5 / 7 + 7 .6 I / 0 9 . 7 0 - + 9 + - 4 0 9 0 3 6 . 0 - 9 F >

M >

� + 3 0 + 6 7 . 6 + D 5 6 E F . + 6 4 0 9 2 . 9 0 3 - 9 0 � + 0 4 0 3 4 0 5 / + D 5 6 E F . � 5 0 7 0 3 0 6 T 0 5 /B , . - . � 5 + 7 9 + 7 . 7 0 8 . 6 4 . 3 6 . 0 - 9 F < 5 3 + 6 7 . 5 / - + 9 + - 4 0 9 7 + 7 . > � 1 0 / 8 , . 7 05 4 2 , 2 � + E F . �

caracter: x <Enter>

lado: 3 <Enter>

Page 89: Introdução à Programação de Computadores em Java

� �

xxx

xxx

xxx

Page 90: Introdução à Programação de Computadores em Java

� �

Tabelas � � � � � � � � � � � � � � � � � � � � � � � �� � �

M G # 0 3 - ( 0 # 3 ' % � � - 0 - ( / ' - " - $ - 0 0 # 3 % ( + 0 5 - ? ' % & 5 % & ( ' # 3 + 0 ) % * + & - 0& - * % $ # + " % 5 + 0 ' " 0 $ + ( + 0 + ' 3 & + 0 ! 0 0 + % $ + " 3 - $ - / ' % " 5 + / ' - & - ( + 0 ? ' % & 5 % & +) % * + & 5 + " + 0 0 + 2 - 0 + % + * + " ? + 5 - ) 1 & # % 0 0 - ( % " % 0 + ' ( % # 0 ? - & % * ( - " 3 - / ' % " 5 +

3 - ( + 0 ' ( % $ + * - $ � P + 5 - ) % * + & - 0 - 3 - ( + 0 5 - $ % * $ ' * % & ( - 5 # 5 % 0 - 0 3 % 3 � 0 3 # $ % 0 � % & % ' 0 % & ' (- G - ( 2 * + H - ( " + 0 0 + $ + " 7 - $ # 5 + . % ( D 5 # % 5 - ' ( % * # 0 3 % 5 - n " 4 ( - & + 0 . � � � � � � � � � � � � � D5 - L # " # 5 % $ + ( + �

� � � � � �� � � ! � � � � "# $ �

0 . 7 0 3 � 2 . 7 0 - + 7 + � + , . 9 0 / 9 0 , + E F . � / C 7 2 + C 7 + 7 . 8 0 , + D � 9 / 5 , + �

� % � � % � � � � � < 8 + 9 + � � & ' ( ' � � � ' �

� 0 8 9 0 - 2 3 J 3 3 0 / . 3 7 0 D + � 0 9 5 / 8 9 . ; 9 + / + � 5 0 - + , - 5 , + 3 3 0 + / C 7 2 + 7 0 5 / + , 2 3 4 + 7 0L K 6 I / 0 9 . 3 0 . 7 0 3 � 2 . 7 0 - + 7 + 6 I / 0 9 . 0 / 9 0 , + E F . � / C 7 2 + < - . / . � 5 03 + B 0 / . 3 + 4 C + ; . 9 + < 4 0 9 A + / . 3 7 0 D + � 0 9 + , ; . 8 + 9 0 - 2 7 . - . / �

{ float x1, x2, x3, x4, x5, x6, x7, x8, x9, x10; float d1, d2, d3, d4, d5, d6, d7, d8, d9, d10; // Leitura e validação de x1, …, x10 float media = (x1+x2+x3+x4+x5+x6+x7+x8+x9+x10) / 10; d1 = x1 - media; d2 = x2 - media; ... d10 = x10 - media; }

) * + ,- . /0

VII

E

Page 91: Introdução à Programação de Computadores em Java

� �

� - . 2 3 + 8 . 7 2 + - . / 8 , 2 - + 9 � 3 0 3 0 9 2 + / 0 6 4 0 3 0 0 / � 0 � 7 0 L K 6 I / 0 9 . 3 D . 3 3 0 /6 0 - 0 3 3 J 9 2 . 3 ; 5 + 9 7 + 9 L K K . 5 L K N R � + , . 9 0 3 < . � 5 0 < 7 2 ; + � 3 0 < 3 F . 6 0 - 0 3 3 2 7 + 7 0 3B + 3 4 + 6 4 0 D 9 0 � 5 0 6 4 0 3 >

� + 9 + 3 2 4 5 + E 0 3 - . / . 0 3 4 + < + ; 0 6 0 9 + , 2 7 + 7 0 7 + 3 , 2 6 ; 5 + ; 0 6 3 7 0 8 9 . ; 9 + / + E F .7 2 3 8 . 6 2 B 2 , 2 � + 5 / + 0 3 4 9 5 4 5 9 + 7 0 7 + 7 . 3 0 , 0 / 0 6 4 + 9 + 4 + B 0 , + . 5 + 9 9 + G >

H / + 4 + B 0 , + ; 5 + 9 7 + < 3 . B 9 0 . / 0 3 / . 6 . / 0 < 5 / + - . , 0 - E F . 7 0 � + , . 9 0 3 7 . / 0 3 / .4 2 8 . 7 0 7 + 7 . 3 > � + 7 + 5 / 7 0 3 4 0 3 � + , . 9 0 3 8 . 7 0 3 0 9 + - 0 7 2 7 . 8 . 9 5 / A 6 7 2 - 0 2 6 4 0 2 9 . >

� � � � � � � � � � � � � � �� � � � � � � � � � � � � � � � � � � � � � � �

� 0 - , + 9 + � 3 0 5 / 2 6 4 0 2 9 .i0 3 - 9 0 � 0 6 7 . �

int i;

7 0 - , + 9 + � 3 0 5 / + 4 + B 0 , + 7 0 2 6 4 0 2 9 . 3 + 0 3 - 9 0 � 0 6 7 . �

int [] a;

� . - . 6 4 9 J 9 2 . 7 + 7 0 - , + 9 + E F . 7 . 2 6 4 0 2 9 .i< � 5 0 9 0 3 0 9 � + 0 3 8 + E . 0 / / 0 / � 9 2 + 8 + 9 +

- . 6 4 0 9 5 / � + , . 9 2 6 4 0 2 9 . < + 7 0 - , + 9 + E F . 7 + 4 + B 0 , + + 6 F . 9 0 3 0 9 � + 0 3 8 + E . 8 + 9 + . 33 0 5 3 0 , 0 / 0 6 4 . 3 > � + 9 + 9 0 3 0 9 � + 9 0 3 8 + E . 8 + 9 + . 3 0 , 0 / 0 6 4 . 3 5 4 2 , 2 � + � 3 0 . . 8 0 9 + 7 . 96 0 � >

int [] a = new int[5];

� 2 6 3 4 9 5 E F . + 6 4 0 9 2 . 9 9 0 3 0 9 � + 0 3 8 + E . 8 + 9 + 5 / + 4 + B 0 , + 7 0 - 2 6 - . 2 6 4 0 2 9 . 3 >

� / , 2 6 ; 5 + ; 0 6 3 - . / . . � + � + < . � . 5 � � � < . 8 9 2 / 0 2 9 . 0 , 0 / 0 6 4 . 7 0 5 / + 4 + B 0 , +0 6 - . 6 4 9 + � 3 0 6 . A 6 7 2 - 0 : . 5 8 . 3 2 E F . ? K > � . 9 2 3 3 . < + 2 6 3 4 9 5 E F . + 6 4 0 9 2 . 9 7 0 D 2 6 0 + 3� + 9 2 J � 0 2 3 �

Page 92: Introdução à Programação de Computadores em Java

� �

a[0], a[1], a[2], a[3] 0 a[4]

� 0 8 . 2 3 7 0 7 0 D 2 6 2 7 + + 4 + B 0 , + < . 3 3 0 5 3 0 , 0 / 0 6 4 . 3 8 . 7 0 / 3 0 9 + - 0 7 2 7 . 3 0/ . 7 2 D 2 - + 7 . 3 2 6 7 2 � 2 7 5 + , / 0 6 4 0 < 4 + , 0 � 5 + , - . / . 6 + 3 � + 9 2 J � 0 2 3 � 5 0 � 2 / . 3 + 4 C+ ; . 9 + > � . 9 0 1 0 / 8 , . �

a[0] = 54;

int i = a[3];

� . 7 0 / . 3 8 0 6 3 + 9 6 + 4 + B 0 , +a

- . / . 5 / + 3 0 � 5 6 - 2 + 7 0 � 8 . 3 2 E 0 3 7 0 / 0 / � 9 2 +- . 6 3 0 - 5 4 2 � + 3 < 4 . 7 + 3 7 . 4 2 8 .

int< 2 6 7 0 1 + 7 + 3 8 0 , . 3 A 6 7 2 - 0 3 K < L < N < � 0 R >

7 0 8 . 2 3 7 0 0 D 0 - 4 5 + 9 + 3 3 0 ; 5 2 6 4 0 3 2 6 3 4 9 5 E 0 3 �

a[0] = 134; a[1] = 5; a[2] = 71; a[3] = -65; a[4] = 12;

. 0 3 4 + 7 . 7 + 4 + B 0 , +a

8 + 3 3 + 9 2 + + 3 0 9

� . 7 0 / . 3 � 0 9 2 D 2 - + 9 D + - 2 , / 0 6 4 0 2 3 3 . < 0 3 - 9 0 � 0 6 7 . for(int i=0; i <a.length ; i++) System.out.println(“a[“+i+”]: ”+a[i]);

. 6 7 0 < - . / . D + - 2 , / 0 6 4 0 3 0 8 0 9 - 0 B 0 <a.length

7 0 � . , � 0 . - . / 8 9 2 / 0 6 4 . . 5 .4 + / + 6 T . 7 + 4 + B 0 , +

a>

� / + , 4 0 9 6 + 4 2 � + � 3 2 6 3 4 9 5 E 0 3 7 0 2 6 2 - 2 + , 2 � + E F . + 6 4 0 9 2 . 9 < 8 . 7 0 9 A + / . 3 4 0 9 5 3 + 7 . +3 0 ; 5 2 6 4 0 2 6 3 4 9 5 E F . �

Page 93: Introdução à Programação de Computadores em Java

� �

int [] a = {134, 5, 71, -65, 12};

3 0 6 7 . � 5 0 � 8 + 9 4 0 7 2 9 0 2 4 + 7 0 3 4 + 2 6 3 4 9 5 E F . 7 0 2 6 2 - 2 + , 2 � + E F . + B 9 0 � 2 + 7 + <- T + / + 9 0 / . 3 � � � � � � 7 0 4 + B 0 , + >

F . C 7 0 / + 2 3 < 4 0 9 / . 3 5 / + 8 + , + � 9 + 7 0 8 9 0 - + 5 E F . 9 0 , + 4 2 � + / 0 6 4 0 � 5 4 2 , 2 � + E F . 7 04 + B 0 , + 3 > � � + � + 7 0 2 1 + 8 + 9 + . 5 4 2 , 2 � + 7 . 9 + 9 0 3 8 . 6 3 + B 2 , 2 7 + 7 0 7 0 5 3 + 9 A 6 7 2 - 0 3 6 F .6 0 ; + 4 2 � . 3 0 / 0 6 . 9 0 3 7 0 � 5 0 . 4 + / + 6 T . 7 + 4 + B 0 , + > � 0 4 0 6 4 + 9 / . 3 + - 0 7 0 9 +8 . 3 2 E 0 3 � 5 0 6 F . 0 1 2 3 4 0 / 6 + 4 + B 0 , + < 8 . 9 0 3 4 + 9 0 / D . 9 + 7 . 3 3 0 5 3 , 2 / 2 4 0 3 � 8 . 90 1 0 / 8 , . < 3 0 4 0 6 4 J 3 3 0 / . 3 + - 0 7 0 9 +

a[12] . - . / 8 2 , + 7 . 9 6 F . 7 + 9 2 + � 5 + , � 5 0 9 0 9 9 . �

. 0 6 4 + 6 4 . 4 0 9 A + / . 3 5 / 0 9 9 . 0 / 4 0 / 8 . 7 0 0 1 0 - 5 E F . 0 . 8 9 . ; 9 + / + 4 0 9 / 2 6 + 9 2 + >

� . 7 0 / . 3 4 0 9 4 + B 0 , + 3 7 0 � 5 + , � 5 0 9 4 2 8 . 7 0 7 + 7 . 3 > . - + 3 . ; 0 9 + , < + 7 0 D 2 6 2 E F . 7 05 / + 4 + B 0 , + C D 0 2 4 + 7 + 3 0 ; 5 2 6 4 0 D . 9 / + �

� 0 8 . 2 3 7 0 3 4 + B 9 0 � 0 2 6 4 9 . 7 5 E F . < 0 3 4 + / . 3 0 / - . 6 7 2 E 0 3 7 0 D + � 0 9 5 / 8 9 . ; 9 + / +8 + 9 + - + , - 5 , + 9 + / C 7 2 + 7 0 5 / + - . , 0 - E F . 7 0 � + , . 9 0 3 0 3 0 5 3 9 0 3 8 0 - 4 2 � . 3 7 0 3 � 2 . 30 / 9 0 , + E F . � / C 7 2 + >

import java.util.*; public class Estatistica { public static void main (String [] args) { int n; Scanner sc = new Scanner(System.in); do{ System.out.print("N: "); n = sc.nextIn(); if (n<=0) System.out.println("Número inválido."); } while(n<=0); float soma=0; float [] x = new float[n]; // leitura dos valores e cálculo da média int i; for(i=0; i<n; i++ ) { System.out.print("x"+i+"? "); x[i] = sc.nextFloat();

tipo [] identificador = new tipo [ expressão_algébrica ] ;

Page 94: Introdução à Programação de Computadores em Java

� �

soma = soma + x[i]; } float media = soma / n; // cálculo dos desvios float [] desvio = new float[n]; for(i=0; i<n; i++ ) desvio[i] = x[i] - media; // Escrita da média, dos números, e dos respectivos desvios System.out.println("A média: " + media ); for(i=0; i<n; i++ ) System.out.println("x"+i+"= " + x[i] + " desvio["+i+"]: "+desvio[i]); } }

� � � � � � � � � � � � �� F . C 8 . 3 3 A � 0 , D + � 0 9 7 2 9 0 - 4 + / 0 6 4 0 + + 4 9 2 B 5 2 E F . 0 6 4 9 0 7 5 + 3 4 + B 0 , + 3 > � 3 4 . C < .- � 7 2 ; . �

int [] a = new int[5]; a[0] = 134; a[1] = 5; a[2] = 71; a[3] = -65; a[4] = 12; int [] b = a;

F . D + � - 0 9 4 + / 0 6 4 0 . � 5 0 0 3 4 + / . 3 � 0 3 8 0 9 + > � � 5 0 3 0 . B 3 0 9 � + C � 5 0 3 0/ . 7 2 D 2 - + 9 / . 3 . 2 � 6 C 3 2 / . 0 , 0 / 0 6 4 . 7 + 4 + B 0 , + B 2 3 3 . 9 0 D , 0 - 4 0 � 3 0 6 . 2 � 6 C 3 2 / .0 , 0 / 0 6 4 . 7 + 4 + B 0 , + + < 0 � 2 - 0 � � 0 9 3 + > � 3 4 . C < 3 0 0 3 - 9 0 � 0 9 / . 3 �

b[0] = 0; System.out.print(a[0]);

� 0 9 2 D 2 - + / . 3 � 5 0 + 3 + A 7 + C K 0 6 F . L � R < - . / . 0 3 4 + 9 A + / . 3 8 . 3 3 2 � 0 , / 0 6 4 0 �

0 3 8 0 9 + > � 3 4 . + - . 6 4 0 - 0 8 . 9 � 5 0 � 5 0 9 . 2 7 0 6 4 2 D 2 - + 7 . 9 + � 5 0 9 . 2 7 0 6 4 2 D 2 - + 7 . 9 B9 0 D 0 9 0 6 - 2 + / + / 0 3 / + 8 . 3 2 E F . 7 0 / 0 / � 9 2 + > � . 9 . 5 4 9 + 3 8 + , + � 9 + 3 < + 0 B 3 F .+ / B . 3 9 0 D 0 9 6 - 2 + 3 8 + 9 + . 8 9 2 / 0 2 9 . 0 , 0 / 0 6 4 . 7 + / 0 3 / + 4 + B 0 , + > H / + 9 0 D 0 9 6 - 2 +; 5 + 9 7 + . 0 6 7 0 9 0 E . : . 5 . � + , . 9 7 0 ? 5 / + 8 . 3 2 E F . 7 + / 0 / � 9 2 + > � / � + � + 0 3 3 0� + , . 9 6 F . 8 . 7 0 3 0 9 / + 6 2 8 5 , + 7 . 7 2 9 0 - 4 + / 0 6 4 0 8 0 , . 8 9 . ; 9 + / + 7 . 9 > � 3 4 . C < 0 / B . 9 +

Page 95: Introdução à Programação de Computadores em Java

� �

3 0 3 + 2 B + � 5 0 + - . 6 4 0 / . 0 6 7 0 9 0 E . 7 . 8 9 2 / 0 2 9 . 0 , 0 / 0 6 4 . 7 + 4 + B 0 , + + < 6 F . C8 . 3 3 A � 0 , + - 0 7 0 9 + . 0 , 0 / 0 6 4 . 2 7 + 4 + B 0 , + 0 3 - 9 0 � 0 6 7 . + � 2 >

H / + � 0 � � 5 0 + 0 B 3 F . 9 0 D 0 9 6 - 2 + 3 < 8 + 9 + - . 8 2 + 9 / . 3 5 / + 4 + B 0 , + < 4 0 9 0 / . 3 � 5 0D + � 0 9 5 / + + 4 9 2 B 5 2 E F . 0 , 0 / 0 6 4 . + 0 , 0 / 0 6 4 . < - . / . 3 0 3 0 ; 5 0 >

int [] a = new int[5]; a[0] = 134; a[1] = 5; a[2] = 71; a[3] = -65; a[4] = 12; int [] b = new int[a.length]; for( int i=0; i<a.length; i++) b[i]=a[i];

� � � � � � � � � � � � � � � � � � � � � � � � �� 3 4 + B 0 , + 3 8 . 7 0 / 3 0 9 8 + 3 3 + 7 + 3 - . / . + 9 ; 5 / 0 6 4 . 3 7 0 D 5 6 E 0 3 > � + 9 + 0 1 0 / 8 , 2 D 2 - + 9� + / . 3 0 3 - 9 0 � 0 9 5 / + D 5 6 E F . 8 + 9 + + - , + 3 3 0

Estatistica� 5 0 8 0 7 0 6 � + , . 9 0 3 + .

5 4 2 , 2 � + 7 . 9 < - + , - 5 , + 0 7 0 � . , � 0 + 3 5 + / C 7 2 + �

// Versão 1.1 import java.util.*; public class Estatistica {

public static void main (String [] args) { int n; Scanner sc = new Scanner(System.in); do{ System.out.print("N: "); sc = nextInt(); if (n<=0) System.out.println("Número inválido."); } while(n<=0); float [] x = new float[n]; float media = leTabelaFloat(x); // cálculo dos desvios int i; float [] desvio = new float[n]; for(i=0; i<n; i++ ) desvio[i] = x[i] - media; // Escrita da média, dos números, e dos respectivos desvios System.out.println("A média: " + media ); for(i=0; i<n; i++ )

Page 96: Introdução à Programação de Computadores em Java

� �

System.out.println("x"+i+"= " + x[i] + " desvio["+i+"]: "+desvio[i]); } private static float leTabelaFloat(float [] tf) { // Le os valores da tabela passada como argumento e calcula a sua média float soma = 0.0f; Scanner sc = new Scanner (System.in); for(int i=0; i< tf.length; i++ ) { System.out.print("x"+i+"? "); tf[i] = sc.nextFloat(); soma += tf[i]; } return (soma / tf.length); }

}

� , ; 5 / + 3 6 . 4 + 3 3 . B 9 0 0 3 4 + � 0 9 3 F . L > L 7 + - , + 3 3 0Estatística

� � ( % ) - , / ' - . 3 % * $ + ( + - 0 3 1 5 - L # " # 5 % . % L ' " � P + leTabelaFloat 2 % & - $ - 0 F 3 - &

# " 3 - & - 0 0 - 2 % & % - 0 3 % $ * % 0 0 - . L + # 5 - $ * % & % 5 % $ + ( + " � ) - * 5 - % $ - 0 0 + 2 & # ) % 5 + I 0 0 # ( .' ( $ * # - " 3 - 5 - 0 3 % $ * % 0 0 - " P + 2 + 5 - & 1 ' 0 % & - 0 3 % L ' " � P + 6 - 0 0 - 2 & - ) # * D ? # + - 0 3 1& - 0 - & ) % 5 + % 2 - " % 0 2 % & % % 0 L ' " � � - 0 5 % 2 & F 2 & # % $ * % 0 0 - 6

> I 5 - $ * % & % � P + 5 + 2 % & � ( - 3 & + L + & ( % * tf . � 1 " + 0 D L % ( # * # % & 6 $ + & & - 0 2 + " 5 - �

5 - $ * % & % � P + 5 - ' ( % 3 % H - * % 5 - ) % * + & - 0 5 + 3 # 2 + float 6� + 3 - � 0 - / ' - - 0 3 % 5 - $ * % & % � P + D - ( 3 ' 5 + 0 - ( - * 7 % " 3 - � 5 - $ * % & % � P + 5 + 2 % & � ( - 3 & +L + & ( % * 5 % L ' " � P + main

! 0 3 + 0 # ? " # L # $ % / ' - % L ' " � P + main / ' % " 5 + # " ) + $ % 5 %& - $ - H - $ + ( + % & ? ' ( - " 3 + ' ( % 3 % H - * % $ ' � + 0 ) % * + & - 0 0 P + 5 + 3 # 2 + String

Q - # G % & - ( + 0 2 % & % 5 - 2 + # 0 + - 0 3 ' 5 + 5 + 3 # 2 + String � + - " 3 % " 3 + . 2 + 5 - ( + 0 L % , - &

5 - 0 5 - � 1 ' ( % - G 2 - & # " $ # % # " 3 - & - 0 0 % " 3 - I 2 F 0 $ + ( 2 # * % & % $ * % 0 0 -

2 ' H * # $ $ * % 0 0 I & ? � % # " �2 ' H * # $ 0 3 % 3 # $ ) + # 5 ( % # " � K 3 & # " ? �� % & ? 0 � �

L + & � # " 3 # � � 6 # � % & ? * - " ? 3 7 6 # � � �K � 0 3 - ( + ' 3 2 & # " 3 * " � % & ? 0 �# � � 6

- G - $ ' 3 - � 0 - + 2 & + ? & % ( % - 0 $ & - ) - " 5 + �

java ArgMain 1 dois 3.5

Page 97: Introdução à Programação de Computadores em Java

� �

+ / ' - + H 3 - ( + 0 �

Q - 0 ) - " 5 % ( + 0 2 + # 0 . ( % # 0 ' ( 5 + 0 ( # 0 3 D & # + 0 5 % - " # ? ( 1 3 # $ % - G 2 & - 0 0 P +

public static void main(String [] args)

B I $ 7 % ( % 5 % � L ' " � P + L % , � 0 - $ + ( + 0 - % 3 % H - * % G L + 0 0 - ' ( % ) % & # 1 ) - * $ + ( + + ' 3 & %

/ ' % * / ' - & . # - . H % 0 3 % - 0 $ & - ) - & leTabelaFloat � G � � + - " 3 % " 3 + . + 0 - * - ( - " 3 + 0 5 - G" P + 0 P + $ + 2 # % 5 + 0 2 % & % + 0 - * - ( - " 3 + 0 5 - tf 6 % 2 - " % 0 + ) % * + & 5 % & - L - & " $ # % G D$ + 2 # % 5 + 2 % & % tf

J N % ( H D ( 3 - & # % 0 # 5 + 2 + 0 0 � ) - * 5 - L # " # & % 3 % H - * % % * - & 5 - " 3 & + 5 % L ' " � P +

leTabelaFloat � - 0 3 - $ % 0 + . % ) - & 0 P + 0 - & # % ( % # 0 # " - L # $ # - " 3 - �

// Versão 1.2

import java.util.*; public class Estatistica { public static void main (String [] args) { int n; Scanner sc = new Scanner(System.in); do{ System.out.print("N: "); n = sc.nextInt(); if (n<=0) System.out.println("Número inválido."); } while(n<=0); float [] x = leTabelaFloat(n); // calculo da média e dos desvios int i; float soma=0.0f; for(i=0; i<n; i++ ) soma +=x[i]; float media = soma /n; float [] desvio = new float[n]; for(i=0; i<n; i++ ) desvio[i] = x[i] - media; // Escrita da média, dos números, e dos respectivos desvios System.out.println("A média: " + media ); for(i=0; i<n; i++ ) System.out.println("x"+i+"= " + x[i] + " desvio["+i+"]: "+desvio[i]);

Page 98: Introdução à Programação de Computadores em Java

� �

} private static float [] leTabelaFloat(int n) { // Cria uma tabela de n floats, onde guarda os valores pedidos ao

// utilizador ; Retorna a tabela preenchida Scanner sc = new Scanner(System.in); float [] tf = new float [n]; for(int i=0; i< tf.length; i++ ) { System.out.print("x"+i+"? "); tf[i] = sc.nextFloat(); } return tf; } }

� � � � � � � � �L >

� 3 - 9 0 � + 5 / 8 9 . ; 9 + / + � 5 0 8 0 E + + . 5 4 2 , 2 � + 7 . 9 5 / 6 I / 0 9 . 6 + 4 5 9 + , 6 < - 9 2 05 / + 4 + B 0 , + - . / 6 0 , 0 / 0 6 4 . 3 < 8 9 0 0 6 - T + � + - . / 6 I / 0 9 . 3 + , 0 + 4 � 9 2 . 3 0D 2 6 + , / 0 6 4 0 + 8 9 0 3 0 6 4 0 . 3 0 , 0 / 0 6 4 . 3 7 + 4 + B 0 , + + . 5 4 2 , 2 � + 7 . 9 > � + , 2 7 0 + 0 6 4 9 + 7 +7 . 5 4 2 , 2 � + 7 . 9 0 5 3 0 D 5 6 E 0 3 >

N >

� , 4 0 9 0 . 8 9 . ; 9 + / + + 6 4 0 9 2 . 9 7 0 D . 9 / + + � 5 0 0 3 4 0 + 8 9 0 3 0 6 4 0 4 + / B C / . / + 2 . 9 0. / 0 6 . 9 7 . 3 6 I / 0 9 . 3 + , 0 + 4 � 9 2 . 3 >

� > � 0 0 3 - 9 0 � + 5 3 + 6 7 . 4 + B 0 , + 3 . 8 9 . ; 9 + / + � 5 0 8 0 7 0 5 / 6 I / 0 9 . 6 + 4 5 9 + , 6 .

3 2 3 4 0 / + 7 0 6 5 / 0 9 + E F . 7 0 - 2 / + , 0 - . 6 � 0 9 4 0 � . 8 + 9 + B 2 6 J 9 2 . >R >

� 0 0 3 - 9 0 � + 5 3 + 6 7 . 4 + B 0 , + 3 . 8 9 . ; 9 + / + � 5 0 , 5 / 2 6 4 0 2 9 . 0 � 5 0 7 0 4 0 9 / 2 6 0 +D 9 0 � 5 6 - 2 + : � � � < . 6 I / 0 9 . 7 0 � 0 � 0 3 ? 7 0 - + 7 + 5 / 7 . 3 3 0 5 3 7 2 D 0 9 0 6 4 0 3+ , ; + 9 2 3 / . 3 >

� >

� 3 - 9 0 � + 5 / 8 9 . ; 9 + / + � 5 0 8 0 E + + . 5 4 2 , 2 � + 7 . 9 5 / 6 I / 0 9 . 6 + 4 5 9 + , 6 0+ 8 9 0 3 0 6 4 0 5 / + 4 + B 0 , + 7 0 - . 6 � 0 9 3 F . 7 0 7 0 - 2 / + , 8 + 9 + B 2 6 J 9 2 . < - . / 60 , 0 / 0 6 4 . 3 > � 1 0 / 8 , . 7 0 5 4 2 , 2 � + E F . �

N? 4 <Enter> 0 0 1 1 2 01 3 11 4 100

Page 99: Introdução à Programação de Computadores em Java

� �

� + 3 % 0 - & - L - & " $ # % 0� M G # 0 3 - ( % * ? ' ( % 0 - G $ - 2 � � - 0 � + & - G - ( 2 * + . " + K ( % * * 3 % * � ' ( # " 3 - # & + 2 + 5 - & 1 0 - &3 P + ? & % " 5 - / ' % " 3 + % $ % 2 % $ # 5 % 5 - 5 % ( 1 / ' # " % + 2 - & ( # 3 # & � - 0 3 % * # " ? ' % ? - ( . 0 F 0 -' 3 # * # , % ' ( " 4 ( - & + L # G + 5 - H # 3 0 2 % & % # " 3 - # & + 0 2 - / ' - " + 0 I 2 % & 3 # & 5 - ' ( $ - & 3 +) % * + & % & - 2 & - 0 - " 3 % � P + 5 + 0 # " 3 - # & + 0 5 - # G % 5 - 0 - & L # G % - 2 % 0 0 % % ' 3 # * # , % & 3 % " 3 %( - ( F & # % / ' % " 3 % % " - $ - 0 0 1 & # %

� �� - & 7 3 3 2 � � � � � � ' " # $ + 5 - + & ?

� � � � % 3 ' & % * ( - " 3 - / ' - 2 % & % / ' - - 0 3 - 2 & + $ - 5 # ( - " 3 + 5 - 3 & 0 2 % 0 0 + 0 L ' " $ # + " - D" - $ - 0 0 1 & # + / ' - + � Q � �� % ) % Q - ) - * + 2 ( - " 3 � # 3 - 0 3 - � % # " 0 3 % * % 5 + � � Q � D ' ($ + " � ' " 3 + 5 - L - & & % ( - " 3 % 0 2 % & % 5 - 0 - " ) + * ) # ( - " 3 + 5 - 2 & + ? & % ( % 0 - ( � % ) % . 5 - ' 0 +* # ) & - . - G # 0 3 - 2 % & % + 0 ) 1 & # + 0 0 # 0 3 - ( % 0 + 2 - & % 3 # ) + 0 - 2 + 5 - 0 - & 5 - 0 $ % & & - ? % 5 + % 2 % & 3 # &5 - 7 3 3 2 � � � � % ) % 0 ' " $ + (

� � N - & - ( + 0 / ' - ) + * 3 % & % / ' # ( % # 0 3 % & 5 - � 1 / ' - ' ( L # $ 7 - # & + 2 + 5 - 3 - & ) 1 & # + 0- * - ( - " 3 + 0 . # " $ * ' # " 5 + % 5 - L # " # � P + 5 - ) 1 & # % 0 $ * % 0 0 - 0 � + - " 3 % " 3 + . % 2 - " % 0 ' ( %5 - 0 0 % 0 $ * % 0 0 - 0 0 - & 1 2 4 H * # $ % � L # $ 7 - # & + 3 - & 1 0 - ( 2 & - % - G 3 - " 0 P + java - ' ( " + ( -# ? ' % * % + " + ( - 5 % $ * % 0 0 - 2 4 H * # $ % � N - & - ( + 0 + 2 + & 3 ' " # 5 % 5 - 5 - ) - & # L # $ % & # 0 0 + - ( 5 - 3 % * 7 - / ' % " 5 + # ( 2 * - ( - " 3 % & ( + 0+ 2 - & % 5 + & - 0 5 - % ' 3 + � % 3 & # H ' # � P + 2 % & % + 0 " + 0 0 + 0 2 & F 2 & # + 0 3 # 2 + 0 5 - 5 % 5 + 0

� � I 2 % * % ) & % switch 2 + 5 - 0 - & 3 & % 5 ' , # 5 % 2 + & $ + ( ' 3 % 5 + &

� � �� + & " P + L % , - & 0 - " 3 # 5 + . ) % & # 1 ) - # 0 5 + 3 # 2 + boolean " P + 2 + 5 - ( 0 - & ' 0 % 5 % 0 " %# " 0 3 & ' � P + switch

� + 3 % 0 - & - L - & " $ # % 0� � � � M ( H + ( & # ? + & . - ( ) - , 5 + $ # $ * + 5 - ) - & � % ( + 0 ' 0 % & % L F & ( ' * % 5 % 0 + ( % 5 %2 & + ? & - 0 0 P + % & # 3 ( D 3 # $ % 5 - & % , P + 1. � ; . 1 + 2 + … + N = (1+N) * N/2

� � Q % 5 + / ' - - 0 3 % ( + 0 % - G - & $ # 3 % & + 0 $ # $ * + 0 " P + ) % * - ' 0 % & % - G 2 & - 0 0 P + 1 + (int) Math.log10( n).

� N - & - ( + 0 + 2 + & 3 ' " # 5 % 5 - 5 - ) - & - ( 5 - 3 % * 7 - ( % # 0 � L & - " 3 - + / ' - 0 - - " 3 - " 5 - 2 + &0 3 % $ �