Apostila Da Linguagem Kenya-1 Parte
-
Author
andre-luiz -
Category
Documents
-
view
680 -
download
2
Embed Size (px)
Transcript of Apostila Da Linguagem Kenya-1 Parte
Linguagem KenyaLgica de Programao Professora ANITA LOPES
"O mundo formado por objetos. Cada objeto possui atributos comportamentos semelhantes a outros objetos, alm de atributos comportamentos prprios. Voc um objeto. Comece a pensar assim !" 1. A Linguagem Kenya - histrico
e e
Toda linguagem de programao precisa de um nome. Como o nome JAVA diz respeito a uma cidade produtora de caf, o autor da linguagem Kenya escolheu este nome, que tambm um nome de caf, por achar mais light do que o JAVA e, desta forma serviria como uma introduo antes de enfrentar a dificuldade do JAVA. Kenya uma linguagem de programao para ensinar programao. O ambiente Kenya converte automaticamente um cdigo escrito em Kenya para Java. Kenya foi projetada e desenvolvida por Robert Chatley com ajuda de Susan Eisenbach. A maioria do trabalho no desenvolvimento da verso2 foi feita por Alan Chan. Ela est sendo mantida por Christopher Anderson. O logotipo de autoria de Ashok ArgentKatwala.
2. Onde est sendo usada Kenya est sendo usada no Imperial College London e no Poltecnico de Milo. 3. Ambiente Kenyaesteja instalada em sua mquina, pois foi escrito em Java.
Kenya roda nas plataformas Windows e Linux e necessrio que a linguagem Java
4. Inicializando Kenya Aps instalar a linguagem Kenya, crie um atalho na rea de trabalho do arquivo run.bat para que seja inicializada e aberta a janela principal onde encontraremos o editor, com numerao de linhas e uma barra de ferramentas como explicada tambm abaixo.
2
Linguagem KenyaLgica de Programao Professora ANITA LOPES
A janela principal
Os botes da barra de ferramentas
5. A Estrutura do ProgramaO conjunto de instrues do programa principal dever estar compreendido na seguinte estrutura: void main( ) { ... } Todo programa escrito na linguagem Kenya tem a extenso .k . Quando pedimos para interpretar algum programa,a funo main(principal) localizada, pois a partir dela que as funes, inclusive as que voc criou, sero chamadas. A palavra void que antecede main significa que no existir nenhum tipo de retorno. Nossos programas podero ter outras funes (em linguagem orientada a objetos, mtodos) que podero ser colocadas antes ou depois de main. Todos os comandos sero finalizados com ;(ponto e vrgula). A linguagem case sensitive, isto , diferencia letras maisculas de minsculas, portanto ateno com as sintaxes.
6. ComentriosSo explicaes colocadas em pontos estratgicos, visando dar maior clareza em determinados trechos e que no so visualizadas na execuo. // Usado para uma nica linha /* ... */ Usado para envolver um conjunto de linhas
7. As Funes de Sada3
Linguagem KenyaLgica de Programao Professora ANITA LOPES
A linguagem Kenya apresenta duas funes para mostrarmos os resultados na tela: print(); Esta funo no faz retorno de carro, isto , no desloca o cursor para a primeira coluna da linha seguinte. Os argumentos devero ficar entre os parnteses e as Strings(conjunto de caracteres) devero ficar entre aspas, mas se for um nico carcater, ficar entre plicas(aspas simples). Alguns caracteres de controle podero ser usados para facilitar a impresso e veremos mais adiante. Exemplo 1:
Exemplo 2:
4
Linguagem KenyaLgica de Programao Professora ANITA LOPES
println();Esta funo faz retorno de carro, isto , desloca o cursor para a primeira coluna da linha seguinte. Exemplo 1:
Visualize as sadas dos seguintes programas: void main() void main() { println("UNESA"); { println("UNESA"); print("Programacao I"); print("Kenya "); println("Kenya - Java"); println("- Java"); } print("Programacao I"); } Construa um programa para produzir esta sada:
5
Linguagem KenyaLgica de Programao Professora ANITA LOPES Caracteres usados com as funes de sada(seqncia de escape): '\n' '\t' Desloca o cursor para a primeira coluna da linha seguinte Desloca o cursor para o incio da prxima zona. Cada zona tem 8 colunas e so pr-fixadas: 1 9 17 25 33 41 49 57 65 73(Windows) '\\' Mostra a contra-barra na tela Observao: Embora sejam dois caracteres, eles so entendidos como um, logo viro entre aspas simples. Impresso de vrios elementos: Quando tivermos vrios elementos para serem impressos, deveremos usar + o operador + (mais) para concaten-los
Exemplo usando \n:
Exemplo usando \t:
6
Linguagem KenyaLgica de Programao Professora ANITA LOPES Exemplo usando \\ e +:
Observao: Como o operador + serve para concatenar os dados para impresso e tambm o operador de adio, temos que colocar a expresso entre parnteses.
8. Tipos Primitivos de dadosA linguagem Kenya disponibiliza cinco tipos de dados: boolean - tipo de dado lgico que s pode assumir dois valores: true ou false . char - tipo de dado que permite um caracter entre plicas : 'S' , '@' , etc. double - tipo de dado numrico do tipo ponto flutuante: 3.0, -8.76, etc.( 7 dgitos no mximo na parte inteira,depois colocar em notao exponencial, e at 16 na parte fracionria) int - tipo de dado numrico inteiro: 23 , -1234, etc. (10 dgitos no mximo) String - tipo de dado formado por um conjunto de caracteres entre aspas: "Professora ANITA LOPES", "UNESA", etc. Consideraes: Como a linguagem Kenya foi escrita em Java, as Strings, tambm conhecidas como cadeia de caracteres, cadeia alfanumrica, so tratadas de forma diferente de linguagens procedurais(C e Pascal). As Strings no so armazenadas em arrays(vetores), trazendo muita vantagem na sua manipulao. As Strings so tratadas como classe em Java e, por padro, classes comeam por letra maiscula em Java. Voc saber mais sobre isto quando inicialiazar seus estudos em Java. Aritmtica das Strings: elas podero ser concatenadas atravs do operador + conforme j foi visto e ser muito utilizado. Lembre-se de que Strings ficam entre aspas e voc no poder fazer: "bolo " + '-' e sim, "bolo " + "-".
7
Linguagem KenyaLgica de Programao Professora ANITA LOPES
9. Operadores, Funes e Expresses9.1. Operadores Bsicos Operador + * / % Significado Exemplo
Adio 2+3 Subtrao 14 - 5 Multiplicao 4*3 Diviso 20 / 3 ou 20 / 3.5 Resto da Diviso (inteiro ou real) 30 % 4 ou 30 % 4.5 Potenciao 2^5 ^ Radiciao -> radicando ^(1.0/indice) 256 ^(1.0/2) Observaes: O operador de / trabalha da seguinte maneira: se o dividendo e o divisor forem inteiros ento o quociente ser inteiro. Se voc desejar uma diviso real, um dos operandos dever se tornar real, acrescentando .0(ponto e zero) se os dois forem constantes. Exemplo 1:
9.2. Funes Matemticas( Mtodos em linguagem orientada a objetos) Calcula a potncia do nmero neperiano exp(2) e=2.718281828459045 Calcula o logaritmo na base neperiana log(8) log(...) Para se calcular o logaritmo em qualquer log(64) / log(8) base: log( logaritmando) / log( base) sqrt(...) Calcula a raiz quadrada sqrt(34) Para as funes sin, cos e tan voc precisar converter graus para radianos entre parnteses: nome da funo (ang * 3.14159265 / 180)8
exp(...)
Linguagem KenyaLgica de Programao Professora ANITA LOPES sin(...) cos(...) tan(...) Para as funes Calcula o seno cujo ngulo est em rd sin(30 * 3.14159265 /180) Calcula o co-seno cujo ngulo est em rd cos(30 * 3.14159265 /180) Calcula a tangente cujo ngulo est em rd tan(30 * 3.14159265 /180) asin, acos e atan voc precisar converter para graus,pois o resultado dado em radianos: nome da funo (valor) / 3.14159265 * 180 Calcula o ngulo cujo seno dado asin(0.5)/3.14159265*180 Calcula o ngulo cujo co-seno dado acos(0.5)/3.14159265*180 Calcula o ngulo cuja tangente dada atan(1)/3.14159265*180 trs funes abaixo fazem um arredondamento de formas diferentes Faz um arredondamento matemtico round(3.5) Arredonda para baixo floor(3.5) Arredonda para cima ceil(3.5) Gera um nmero aleatrio entre 0 e 1 random() no tem argumento Retorna o nmero sem o sinal abs(-8)
asin(...) acos(...) atan(...) As round(...) floor(...) ceil(...) random( ) abs(...)
Exemplo 1:
9
Linguagem KenyaLgica de Programao Professora ANITA LOPES Exemplo 2:
Exemplo 3: Faremos agora um estudo mais detalhado para que saibamos como usar a funo random(), tendo em vista que ela gera um nmero aleatrio entre 0 e 1 e, na maioria da vezes, no ser o intervalo desejado. Teremos que levar em considerao as trs funes de arredondamento para cada caso, combinando com a funo random() e criando uma expresso ora s com o valor final, ora com o nmero de elementos do intervalo e o valor inicial do intervalo. Caso 1: O intervalo desejado de 0 ate n
10
Linguagem KenyaLgica de Programao Professora ANITA LOPES Consideraes: No se preocupe com alguns comandos usados, pois o objetivo era fazer com que fossem gerados vrios nmeros no intervalo desejado. Usamos round(...) porque esta funo faz o arredondamento matemtico e teramos a possibilidade de aparecer tanto o 0 como o 6. Se random() gerasse um nmero muito prximo de 0, mesmo multiplicado por 6, round(...) levaria para 0 e se gerasse 0,999999999999999, mesmo multiplicado por 6, no daria 6, mas round(...) levaria para 6.
Caso 2: O intervalo desejado de 1 ate n
Consideraes: No se preocupe com alguns comandos usados, pois o objetivo era fazer com que fossem gerados vrios nmeros no intervalo desejado. Usamos ceil(...) porque esta funo sempre arredonda para cima e no teramos a possibilidade de aparecer o 0. Se random() gerasse um nmero muito prximo de 0, ceil(...) levaria para 1.
Caso 3: O intervalo desejado de n1 ate n2
11
Linguagem KenyaLgica de Programao Professora ANITA LOPES Consideraes: No se preocupe com alguns comandos usados, pois o objetivo era fazer com que fossem gerados vrios nmeros no intervalo desejado. O primeiro passo descobrir quantos nmeros tem o intervalo: (n2 n1)+1. No nosso exemplo: (9 4) + 1 =6. O segundo passo verificar o limite inferior do intervalo. No nosso exemplo: 4. Usamos floor(...) porque esta funo sempre arredonda para baixo. Qualquer nmero gerado por random() que multiplicado por 6 for menor que 1, floor(...) levar para 0 que somado a 4, dar 4. Se for gerado 0,999999999999999, multiplicado por 6, no dar o nmero 6, logo floor(...) levar para 5 que somado a 4, dar 9. 9.3. Operadores Relacionais Operadores Significado Exemplo == igual 2 + 2==4 ou 'a'== 'b' != diferente 'S' != 's' < menor 5 maior 3 *2 > 5 = 3+2 A resposta de uma expresso que usa operadores relacionais ser: true (V) ou false(F) Exemplo 1:
Consideraes: Os operadores relacionais podem ser usados com qualquer um dos cinco tipos de dados. Quando os dados so dos tipos char ou String, a comparao feita tendo em vista o cdigo ASCII dos caracteres.(algarismos 0-9: 48 57, letras maisculas : 65 90, letras minsculas: 97 122, etc). Quando comparados nmeros de tipos diferentes, a converso automtica.
12