Baixe o app para aproveitar ainda mais
Prévia do material em texto
Linguagem de Programação Questões múltipla escolha Muitas séries matemáticas podem ser geradas pela estrutura do for. Analise o código abaixo, supondo que você digitou 2 e 4 quando lhe foram solicitados dois números e escolha a opção que contém a série exibida pelo código R: 2 4 6 10 16 26 42 Na construção de programas na linguagem C, precisamos tomar muito cuidado com a sintaxe das expressões condicionais, para que não tenhamos resultados inesperados. Supondo que as variáveis foram devidamente declaradas e levando em conta apenas a linha de código apresentada, dentre as opções qual apresenta erro na sintaxe para a linguagem C. R: if x > 0 {a = 2;} Observe o código abaixo: #include < stdio.h > #include < stdlib.h> int main(){ int x,y,z; x=6; y=2; z = (x%2)+8; puts(z); system("PAUSE"); return 0; } Dentre as opções abaixo é correto afirmar: R: ocorrera um erro Qual o nome da função matemática que calcula a potenciação de um número? R: pow Sabe-se que a linguagem C é uma das mais utilizadas no mundo. Desenvolvida em 1972 é uma linguagem voltada para programadores. Dentre as opções abaixo é incorreto afirmar: R: possui com conjunto muito grande palavras reservadas o que torna o aprendizado complexo Que tipo de dado deve ser utilizado para definir uma variável que irá armazenar um número do tipo: 65,890 R: float Acerca das variáveis, podemos destacar que os tipos básicos do C, são: R: char, int, float e double. Quanto aos códigos de formatação (especificadores de formato) usados com a função printf() e tendo em vista o trecho do programa, qual deveria ser a linha usada para exibir a saída abaixo: Observação: A sequência de números que aparece na saída representa as colunas da tela. Trecho int num1= 12, num2=8; float num3=15; printf("\n12345678901234"); R: printf("\n%.2f\t%06.2f\n",(float) num1/num2, num3); Quanto aos códigos de formatação (especificadores de formato) usados com a f unção printf() e/ outras e tendo em vista o trecho do programa, qual deveria ser a linha usada para exibir a saída abaixo: Observação: A sequência de números que aparece na saída representa as colunas da tela. Trecho int num1= 7, num2=8; float num3=15.2; printf("\n12345678901234"); R: printf("\n%.3f\t%.0f\n", ceil((num1+num2)/2+num3), num3); Quanto aos códigos de formatação (especificadores de formato) usados com a função printf() e tendo em vista o trecho do programa, qual deveria ser a linha usada para exibir a saída abaixo: Observação: A sequência de números que aparece na saída representa as colunas da tela. Trecho int num= 12; float med=9.8; printf("\n12345678901234"); R: printf("\n%d\t%06.2f\n", num, med); Qual é a saída de tela, deste trecho de programa? int x=4, y=8; if (x < 2) printf ("%d \n", x); else printf ("%d \n", y); R: 8 Muitas séries matemáticas podem ser geradas pela estrutura do for. Analise o código abaixo e escolha a opção que contém a série exibida pelo código R: 1 1 2 4 7 13 24 44 Dado o trecho de lógica utilizando o conceito da linguagem de programação C. Diga o resultado das variáveis x, y e z depois da seguinte sequência de operações: int x,y,z; x=y=10; z=++x; x=-x; y++; x=x+y-(z--); R: x = -11 y = 11 z = 10 Estava pesquisando na internet, quando li, num fórum, um pedido de ajuda que incluía um programa codificado na linguagem C, apresentado abaixo. A pessoa não tinha um compilador e não estava conseguindo analisar o programa. Acompanhei no Teste de Mesa, supondo que eu teria digitado 345 quando foi solicitado um número inteiro de três algarismos. Assinale a resposta CORRETA que apresenta o que foi exibido na tela. R: 0343 (O valor absoluto do resultado da expressão formatada) Qual a estrutura de repetição usada para quantidade determinada de repetições? R: for Um Engenheiro da prefeitura está fazendo um levantamento do número de árvores necessárias para serem plantadas em 20 bairros. Ele gostaria de declarar matrizes para armazenamento desses dados. Assinale a linha onde a declaração atende ao que ele deseja. R: char bairros[20][40]; int quantidade[20]; Alguns iniciantes na linguagem C sentem dificuldades de usar a estrutura dos ifs encadeados. Sabemos que algumas afirmativas abaixo não produziriam um resultado errado, mas que tornaria o programa com menor qualidade, visto que testes seriam realizados sem necessidade. Então, leia com atenção e só escolha a afirmativa poderá ajudá-los a construir programas com qualidade, usando todos os recursos da estrutura if ... else if... R: O número de ifs encadeados é igual ao número de respostas possíveis, não considerando a resposta errada do usuário, pois essa seria criticada no else. Assumindo que faltam chaves no programa, o que será impresso? int main(){ int num =10; if (num%2==0) cout<< "O numero "; cout<< "é par"; else cout<< "O numero "; cout<< " é impar"; } R: O numero é par é impar Um programa de cadastro deve solicitar cpf,nome e telefone de alunos até que o cpf seja igual a 0. Que estrutura em C melhor representa esta tarefa? R: do{ // [bloco de comandos] } while (cfp !=0); A linguagem C/C++ apresenta vantagens e desvantagens em sua utilização. Considere as seguintes afirmativas: |) Possibilidade em programação de alto e baixo nível; ||) Grande período para o aprendizado. |||) Adequação a grandes projetos; assinale a alternativa que contém apenas vantagens da linguagem C++. R: | e ||| Um lojista gostaria de desenvolver um programa que pudesse armazenar os códigos (valores inteiros), os valores de compra (valores reais), os valores de vendas (valores reais) e a quantidade (valores inteiros) de todos os mil produtos. Pensou em declarar algumas matrizes unidimensionais para tornar isso possível. Qual das opções a baixo declara as matrizes necessárias para que o programa possa ser desenvolvido a partir delas e seguindo, rigorosamente, as sugestões do texto acima? R: int codigos[1000], qtdade[1000]; float valorC[1000], valorV[1000]; As matrizes, assim como os vetores, são muito importantes para facilitar o trabalho de um programador, por isso é extremamente importante saber como utiliza-la. Assinale a alternativa em que há uma matriz bidimensional, do tipo inteiro, com 10 linhas e 20 colunas, declarada de forma correta. R: int matrizExemplo[10][20]; Na linguagem C, no processo de manipulação de memória temos a possibilidade de utilizar os ponteiros. Após as linhas de código apresentadas, que tratam a manipulação de variáveis e ponteiros, forem executadas e antes do programa ser finalizado: (desconsidere a necessidade do restante do programa) int *x, pos; pos = 5; x = &pos; Podemos afirmar que: R: O conteúdo do endereço para o qual x aponta é 5. Na função main() da linguagem C, declarações, comandos, estruturas e tudo mais que pertence ao corpo da função estão envoltos por dois elementos. Assinale a opção que apresenta esses elementos R: { e } O Operador ternário é uma forma elegante de representar if else if, visto que é abreviada. Observe o trecho abaixo e assinale a opção que descreve o que faz. int a=12, b=35, c=7, resp; resp=(a>b && a > c) ?a: (b>c) ? b/c:c; printf (''valor: %d'' , resp); R: exibe valor: 5 Matrizes é um dos conceitos mais largamente usado em programação nos dias de hoje. Identifique a opção que ocorrerá um erro: R: int matriz[2][3]= {{2,4,6};{7,8,9}}; Um engenheiro precisava calcular o valor do imposto a ser pago no carnê leão. Sabe-se que o imposto é calculado sobre o salário bruto. Acompanhe o programa codificado na linguagem C, supondo que você digitou 4000 para primeira solicitação de entrada e 1000, para segunda solicitação. Escolha a opção onde está presente o valordo imposto R: Valor do imposto a ser pago: 750.00 A estrutura do if na linguagem C, como em toda linguagem, tem uma sintaxe. Observe as afirmações abaixo e escolha a opção ERRADA. I - As chaves de abertura e fechamento, sempre, não são obrigatórias. II -No teste unimos expressões relacionais com operadores lógicos quando necessário. III - A palavra then está presente na estrutura. IV O uso do else poderá não ser necessário. R: I e III estão corretas Dentre as estruturas de Dados mais utilizadas em programação, se encontram os vetores. Baseado neste conceito, identifique a opção incorreta: R: Podem ser formados por elementos de tipos diferentes. Sabemos que para a utilização de funções da linguagem C precisamos declarar suas respectivas bibliotecas. De acordo com a Linguagem C marque a opção em que o descritivo da biblioteca está correto R: math.h - Funções matemáticas Observe o programa abaixo e escolha a opção que apresenta o que retorna da função chamada R: O valor retornado corresponde ao deslocamento mais um em relação ao endereço base da variável que contem o menor número Baseado nos conceitos de Matrizes, no que tange em relação a declaração, dentre as afirmações que se seguem, assinale a que não contém erros sobre as matrizes multidimensionais- 1 e matrizes não dimensionadas- 2 respectivamente R: 1- Tipo nome [tamanho1][tamanho2][tamanho3]...[tamanho n] e 2 - O tamanho não é especificado . Arquivos em C podem representar tantos arquivos do sistema quanto dispositivos periféricos, verifique se está correto os arquivos pré-definidos: R: stdin = Dispositivo de entrada padrão (normalmente o teclado) Na manipulação de arquivos na linguagem C, no processo de abertura do mesmo, podemos ter erros: devido a não existência do arquivo; ao arquivo estar corrompido; etc, não sendo possível abrir o mesmo. Das afirmativas apresentadas qual define corretamente o que pode ser feito em relação ao erro na abertura, segundo o que foi apresentado nas aulas R: a função fopen, retorna NULL quando não consegue abrir o arquivo e o usuário pode tratar o conteúdo da variável associada ao arquivo, comparando com o valor NULL. A função rewind() de protótipo void rewind (FILE *fp); tem como comportamento: R: Retornar a posição corrente do arquivo para o início. Considere que as bibliotecas necessárias foram devidamente declaradas. int main() { FILE *arq ; int i; _____ c ; arq = _____ ( " jornal.txt " , " r " ) ; if ( arq == NULL ){ printf ( " Erro na abertura do arquivo " ) ; system ( " pause " ) ; exit ( 1 ) ; } else for ( i = 0; i<5; i++){ c = fgetc ( arq ) ; printf( "%c", c ) ; } _____( arq ) ; system ( " pause " ) ; return 0; } Complete as lacunas do código para que o programa funcione corretamente. A ordem em que as palavras são dispostas na resposta, devem preencher respectivamente as lacunas R: char - fopen – fclose Na manipulação de arquivos na linguagem C, podemos utilizar várias funções da linguagem. Cada uma delas tem um propósito específico. Das afirmativas apresentadas qual define corretamente qual a finalidade da função feof() . R: Função que detecta o fim do arquivo. Na definição de uma função, precisamos escrever suas partes, sendo algumas obrigatórias e outras, facultativas. tipo nome ( tipo1 parâmetro1, tipo2 parâmetro2, ..., tipon parâmetroN) { corpo da função } Das opções apresentadas abaixo, marque a que apresenta apenas partes obrigatórias de forma que a função execute alguma tarefa, sem levar em consideração os símbolos (chaves, parênteses, etc). R: Tipo , Nome, e Corpo da função. Todo programa codif icado na linguagem C pode incluir um a, ou várias bibliotecas , mas existe uma que tem que est ar nessa lista, na maioria das vezes, de vido a necessidade da in teração com o u suário.. Assinale a alternati va que aprese nta essa bibliot eca. Todo programa codif icado na linguagem C pode incluir um a, ou várias bibliotecas , mas existe uma que tem que est ar nessa lista, na maioria das vezes, de vido a necessidade da in teração com o u suário.. Assinale a alternati va que aprese nta essa bibliot eca. Todo programa codif icado na linguagem C pode incluir um a, ou várias bibliotecas , mas existe uma que tem que est ar nessa lista, na maioria das vezes, de vido a necessidade da in teração com o u suário.. Assinale a alternati va que aprese nta essa bibliot eca. Todo programa codificado na linguagem C pode incluir um a, ou várias bibliotecas, mas existe uma que tem que estar nessa lista, na maioria das vezes, devido a necessidade da interação com o usuário. Assinale a alternativa que apresenta essa biblioteca. R: stdio.h Qual dos comandos abaixo permite que um bloco de comandos seja executado enquanto a variável num seja diferente de 0 R: while (num != 0) Qual a estrutura de repetição usada para quantidade indeterminada de repetições? R: while Arquivos em C podem representar tanto arquivos do sistema quanto dispositivos periféricos, verifique se está correto os arquivos pré-definidos: R: stdin = Dispositivo de entrada padrão (normalmente o teclado) Durante a construção de um programa na linguagem C, trabalhando com a maior idade pelas leis Brasileiras, o programador verificou a necessidade de exibir os tex tos: "Maior de 18 anos.", para pessoas com mais de 18 anos porém menores que 21 e 65. "Maior de 21 anos.", para pessoas com mais de 21 anos porém menores que 65. "Idoso.", pa ra pessoas co m idade maior ou igual 65 anos. Sabe-se que foi declarado a variável: int idade; e que um valor foi atribuído para a mesma. Não levando em conta a necessidade de se colocar todo o programa e tomando como base apenas o uso da estrutura de controle de flux o condicional if corretamente, a lógica, e que apenas um dos textos deve ser exibido. Qual trecho de programa atende a n ecessidade do programador? Durante a construção de um programa na linguagem C, trabalhando com a maior idade pelas leis Brasileiras, o programador verificou a necessidade de exibir os textos: "Maior de 18 anos.", para pessoas com mais de 18 anos porém menores que 21 e 65."Maior de 21 anos.", para pessoas com mais de 21 anos porém menores que 65."Idoso.", para pessoas com idade maior ou igual 65 anos. Sabe-se que foi declarado a variável: int idade; e que um valor foi atribuído para a mesma. Não levando em conta a necessidade de se colocar todo o programa e tomando como base apenas o uso da estrutura de controle de flux o condicional if corretamente, a lógica, e que apenas um dos textos deve ser exibido. Qual trecho de programa atende a necessidade do programador? R: if (idade>= 65){ cout<<"Idoso."; }else{ if (idade>= 21){ cout<<"Maior de 21 anos."; }else{ if(idade>= 18){ cout<<"Maior de 18 anos."; } } } Se a minha média for maior ou igual a 6 estarei aprovado, caso contrário, estarei reprovado. Qual dos trechos abaixo escritos em C++ representa est a situação? Se a minha média for maior ou igual a 6 estarei aprovado, caso contrário, estarei reprovado. Qual dos trechos abaixo escritos em C++ representa est a situação? R: if (media >= 6)cout << "Aprovado";elsecout << "Reprovado"; Qual tipo de variável deve ser usado para armazenar um valor lógico (true/false) em C++? R: Boolean Em C++, qual o símbolo usado para representar resto da divisão? R: % Em C++, quando temos variáveis do tipo CPF, identidade, matrícula, número do telefone, apesar de serem números não fazemos cálculo com eles. Logo podemos declarar estas variáveis como do tipo: R: string A linguagem C/C++utiliza variáveis, que podem ser classificadas como globais ou locais. Dentre as opções, assinale a que expressa corretamente à definição de "variável global" da linguagem C/C++. R: Mantêm seu valor em todo o programa e suas variáveis são escritas fora do escopo das funções Os operadores lógicos servem para combinar resultados de ex pressões,retornando se o r esultado final é verdadeiro ou falso. Marque a alternativa que contém o operador lógico que deve ser utilizado quando as duas proposições lógicas necessitam ser verdadeiras para que o resultado da combinação seja verdadeiro. Os operadores lógicos servem para combinar resultados de expressões, retornando se o resultado final é verdadeiro ou falso. Marque a alternativa que contém o operador lógico que deve ser utilizado quando as duas proposições lógicas necessitam ser verdadeiras para que o resultado da combinação seja verdadeiro. R: ((pontos>=10) & & (pontos <=20)) Na criação de programa muitas vezes precisamos exibir valores e pegar valores passados pelo usuário. Desconsiderando a necessidade da criação da estrutura geral do programa analise o trecho de código.int x=15;cout << "O valor de x e: " << x ;cout << "\t e seu quadrado é : " << x*x; Marque a afirmativa correta em relação ao trecho de código apresentado n a questão. R: Será exibido um texto em apenas uma linha com uma tabulação após o valor de x . Para calcular a área de um retângulo é necessário conhecer a medida dos lados. Considerando que a área é dada pela altura multiplicada pela largura do retângulo, selecione o trecho de programa que mostra a entrada correta dos dados necessários para o cálculo da área de um retângulo R: cin >> altura >> largura; Assinale a alternativa que apresenta APENAS os exemplos de operadores relacionais. R: <, > e > = Estava pesquisando na internet, quando li, num fórum, um pedido de ajuda que incluía um programa codificado na linguagem C, apresentado abaixo. A pessoa não tinha um compilador e não estava conseguindo analisar o programa. Acompanhei no Teste de Mesa, supondo que eu teria digitado 345 quando foi solicitado um número inteiro de três algarismos. Assinale a resposta CORRETA que apresenta o que foi exibido na tela R: 0343 (O valor absoluto do resultado da expressão formatada) Uma parte bastante importante no estudo da linguagem C é ter o conhecimento das suas bibliotecas. As respectivas categorias das funções das bibliotecas #include ctype.h e #include math.h são: R: Funções para teste de caracteres e conversão de letras maiúsculas em minúscula e vice-versa; funções matemáticas que possibilitam arredondamento de um número. Na linguagem C, uma variável pode ser classificada como LOCAL ou GLOBAL. De acordo com as características das variáveis LOCAIS, marque a alternativa ERRADA R: A função main( ) p ode acessar qualquer variável local de qualquer função . Um engenheiro precisava calcular o valor do imposto a ser pago no carnê leão. Sabe-se que o imposto é calculado sobre o salário bruto. Acompanhe o programa codificado na linguagem C, supondo que você digitou 4000 para primeira solicitação de entrada e 1000, para segunda solicitação. Escolha a opção onde está presente o valor do imposto. R: Valor do imposto a ser pago: 750.00 Na lista de exercícios que foi liberada pela professora de Linguagem de Programação I, na questão 3, estava presente o programa abaixo. No enunciado, era solicitado que fosse feito o acompanhamento da execução do programa no Teste de Mesa, supondo que tivesse sido digitada a seguinte data: 11151918.Assinale a opção CORRETA para a saída desse programa. R: 1918 / 11 / 15 Muitas séries matemáticas podem ser geradas pela estrutura do for. Analise o código abaixo e escolha a opção que contém a série exibida pelo código R: 1 1 2 4 7 13 24 44 Uma das dificuldades da estrutura escolha/ caso é o fato da s restrições variarem para cada linguagem, dificultando a fixação. Na linguagem C, essa estrutura recebe o nome de switch() e tem suas restrições. Observe os trechos abaixo e assinale o que é possível ser usado na linguagem C, supondo que se espera encontrar na variável de nome a, inteira, alguns valores e entres eles está o número 90. Analise a s linhas abaixo e assinale que foi escrita corretamente para testar o número 90 na estrutura switch() R: case 90: printf("Pode ") ; break; Suponha que as bibliotecas necessárias foram declaradas e considere em função das respostas a numeração das linhas apresentadas entre parênteses. (L1)int main()(L2) {(L3) char vet[40];(L4) puts("Digite o seu nome completo:");(L5) fgets(vet);(L6) printf("%s\n", vet);(L7) system("pause");(L8) return (0);(L9) } Analise o código e assinale a alternativa correta R: Erro na (L5)- Na forma de preencher a função fgets Na linguagem C/C ++ existem três loops ou estruturas de repetição, sendo elas, for, while, e do -while. Considere as afirmações abaixo: I)O loop for é usado para repetir um comando ou bloco de comandos diversas vezes, podendo ser baseado em um contador interno da estrutura e uma condição que o encerra. II) A estrutura do-while executa inicialmente todos os comandos internos do laço, depois testa a condição, se esta for verdadeira, retorna e faz tudo novamente. III) A estrutura while testa uma condição, se esta for falsa, as instruções dentro do laço não serão executadas, e o teste sera feito novamente ate que a condição seja atingida. As assertivas corretas são: R: I e II Muitas séries matemáticas podem ser geradas pela estrutura do for. Analise o código abaixo e escolha a opção que contém a série exibida pelo código. R: 1 1 2 3 5 8 13 21 Questões discursivas Identifique no código abaixo um exemplo de Objeto (Instância), Método e Classe. Explique cada conceito deste. public class JavaApp { public static void main(String[] args) { Java java1 = new Java("1.5", "jdk"); System.out.println(java1.getNome()); } } R: objeto: java1 Classe: java Metodo: getNome() Objeto é uma instancia de class. Classe é um modelo abstrato de dados. Metodo é uma operação ou ação ofertada pela classe. A Linguagem de programação Java utiliza a metodologia orientada a objetos e permite a implementação de classe e objetos. Utilizando esta linguagem, implemente uma classe Computador com os atributos codigo, marca e modelo e uma classe com método main que instancia dois objetos com os seguintes dados: i) 2, "hp", "NXY000" e ii) 6, "acer", "YXU200". R: public class Computador{ private int codigo; private String marca; private String modelo; public Computador(int codigo, String marca, String modelo){ this.codigo=codigo; this.marca = marca; this.modelo=modelo; } Public class principal { public static void main )string[] args){ Computador comp1= new computador(2,”hp”,”NXY000”); Computador comp2= new computador(6,”acer”,”YXU200”); } } Java é uma linguagem multiplataforma, isto é, pode ser executada em vários sistemas operacionais ou dispositivos. Tal característica é em razão, principalmente, pela presença da Máquina Virtual Java. Explique como esta Máquina Virtual possibilita a execução dos programas Java em várias plataformas. Resposta: A máquina virtual java é um componente da plataforma java que funciona entre o sistema operacional e o programa java. Existe uma implementação de máquina virtual java para cada sistema operacional e/ou dispositivo móvel. Na verdade, é a máquina virtual java que interpreta o programa java Erros de execução podem ocorrer em códigos fontes implementados. As boas práticas de desenvolvimento da programação orientada a objetos exigem que o desenvolvedor se preocupe com os possíveis erros de execução da sua aplicação. Na linguagem de programação Java para tratar erros, deve-se utilizar paradigma try / catch. Neste contexto, implemente uma aplicação Java que trate erros de divisão por zero. R: public class ErroDivisaoZero{ public static void main(String[] args){ try{ int x = 0; int y =2; int resultado = y/x; } catch (ArithmeticException e){ System.out.println("erro de divisão por zero" + e.getMessage()); } } Uma API é um conjunto de classes e componentesque facilita o desenvolvimento de diversas aplicações em Java. Cite dois exemplos de classes da API java e suas funções. R: ArrayList – classe que implementa uma collection que permite o armazenamento de um conjunto de objetos; JButton – classe que representa em SWING um botão O programa abaixo pode gerar uma exceção? Se a resposta for positiva, como implementar um tratamento de exceção para que seja exibida uma mensagem em caso de erro? public class Exemplo1App extends Object { public static void main(String args[]) { int a[] = new int[2]; for (int i=1; i<=4; i++) System.out.println(a[i]); } } R: Sim. public class Exemplo1App extends Object { public static void main(String args[]) { try{ int a[] = new int[2]; for (int i=1; i<=4; i++) System.out.println(a[i]); } catch (ArrayIndexOutOfBoundsException e) { System.out.println("erro de indice fora de faixa"); } } Objeto é uma instancia de uma classe. Para instanciar uma classe java, deve-se utilizar um método especial chamado construtor. Explique quais características este método especial deve ter e implemente um método construtor para uma classe Carro com os atributos marca e modelo. R: O método construtor deve ter o mesmo nome da classe e não pode possuir retorno. Public Carro(String marca, String modelo){ This.marca=marca; This.modelo=modelo; } Explique o conceito de Polimorfismo e Sobrecarga. O código fonte abaixo possui exemplos destes conceitos? Se sim, aponte-os R: Polimorfismo ocorre quando métodos possuem as mesmas assinaturas e implementações diferentes em classes distintas. Neste caso o método toString() é polimórfico. Metodos com o mesmo nome, mas assinaturas diferentes se constituem em sobrecarga. Neste caso o método construtor de Pessoa está sobrecarregado. Java é um a linguagem de programaçã o com a qual po demos realizar qu alquer tipo dprograma. Na atualidade , é u ma linguage m muito extensa e cada vez cob ra mais importâncino âmbito d e Internet co mo na inf ormática em geral. F oi desenvo lvido pela com panhia SuMicrosystems com grande dedicaç ão e sempre enfocada a c obrir as necessidades tecnológicamais principa is. Descreva a principal característica da linguagem JAVA e apresente a vantagem que esscaracteríst ica proporciona ? R: O JAVA É UMA LINGUAGEM MULTIPLATAFORMA O QUE POSSIBILITA FUNCIONAR ATRAVÉS DA JVM EM TODOS OS SYSTEMAS OPERACIONAIS INCLUSIVE NOS DISPOSITIVOS PORTÁTEIS. ALÉM DE SER POSSÍVEL A UTILIZAÇÃO DE CÓDIGOS DE OUTRAS LINGUAGENS DE PROGRAMAÇÃO. ATRAVÉS DE SUAS VERSÕES É POSSIVECRIAR SOFTWARES CLIENTE SERVIDOR (JSE), SISTEMA PARA INTERNET (JEE), E SISTEMAS PARA DISPOSITIVOSMÓVEIS (JME) O programa abaixo pode gerar uma exceção? Se a resposta for positiva, como implementar um tratamento de exceção para que seja exibida uma mensagem em caso de erro? public class Exemplo1App extends Object { public static void main(String args[]) { int a[] = new int[2]; for (int i=1; i<=4; i++) System.out.println(a[i]); } } R: Sim. Segue a Implementação: public class Exemplo1App extends Object { public static void main(String args[]) { try{ int a[] = new int[2]; for (int i=1; i<=4; i++) System.out.println(a[i]); } catch (ArrayIndexOutOfBoundsException e) { System.out.println("erro de indice fora de faixa"); } } “um programa java pode ser executado no Linux, windows e macOS”. “java pode ser executado em smartphones, pc, web etc.”. As afirmações anteriores representam qual característica da plataforma java? Explique R: essas afirmações representam a característica multiplataforma da plataforma java, que pode ser executada em vários sistemas operacionais por causa da maquina virtual java. Introduziu-se o atributo ano, na classe Carro. Para dar acesso a este atributo devem ser introduzidos os métodos get e set, cujos protótipos já estão descritos no corpo da classe. Note que o parâmetro do método set tem mesmo identificador do atributo. A fim de evitar ambiguidade escreva os comandos que compõem estes métodos utilizando o operador de referência this. public class Carro { private String cor; private boolean estadoMotor; private int ano; public void ligaMotor() {estadoMotor=true;} public void desligaMotor( ) {estadoMotor=false;} public boolean motor( ){ return estadoMotor;} public void setCor (String c){cor=c;} public String getCor( ){return cor;} public void setAno (int ano){....................................................} public int getAno( ){........................................}} R: public void setAno (int ano){ this.ano=ano; } public int getAno( ){ return ano; } A Plataforma Java é dividida em três edições: JSE (Java Standard Edition), JEE (Java Enterprise Edition) e JME (Java Micro Edition). Explique a diferença destas três plataformas. R: Cada plataforma tem um objetivo específico. A JSE é específica para o desenvolvimento de aplicações desktop. A plataforma JEE é voltada para desenvolvimento de aplicações web e distribuídas. Por fim, a plataforma JME é específica para desenvolvimento de aplicações Java para dispositivos móveis. Seja a classe Carro e sua subclasse da CarroPasseio: public class Carro { protected double preco=1000.00; protected final double taxa=150.00; public double calculaPreco() { return preco+taxa; } } public class CarroPasseio extends Carro{ private double precoModelo; public void setPreco(double p){precoModelo=p;} public double calculaPreco() { return preco+taxa+precoModelo; } } Qual a saída produzida pela execução do código abaixo: public class Teste { public static void main(String[] args) { Carro c=new Carro(); CarroPasseio b=new CarroPasseio(); b.setPreco(1500.00); System.out.println(b.calculaPreco()); System.out.println(c.calculaPreco()); } } R: 2650.0 1150.0 A metodologia Orientação a Objetos é caracterizada pelo uso de diversos mecanismos que proporcionam reuso de código, segurança e facilidade de manutenção do código. Entre estes mecanismos pode-se citar a Herança entre classes. Explique o que vem a ser este mecanismo. R: Herança Significa a capacidade de incorporar as características e as funcionalidades de uma classe. Assim como a herança de todas as operações e dados, você pode especializar métodos da super classe e especificar novas operações e dados, para refinar, especializar, substituir ou estender a funcionalidade da classe progenitora. Um bean é uma classe definida como um bloco, que têm sua estrutura facilmente portável e sua estrutura é muito simples. O foco é construir pequenos componentes com apenas as funções básicas. Para isso, um Bean tem que ter as seguintes características: • Nome da Classe; • Atributos da Classe privados; • Construtor vazio; • Métodos Get’s e Set’s para todos os atributos; Seja o seguinte problema: Controlar um clube recreativo. Neste clube, deve-se gerenciar as atividades oferecidas. Para isso, tem-se o seguinte diagrama da classe de Atividades: R: public class Atividade { private int codAtv; private String descricao; public Atividade(){ } public int getCodAtv() { return codAtv; } public void setCodAtv(int codAtv) { this.codAtv = codAtv; } public String getDescricao() { return descricao; } public void setDescricao(String descricao) { this.descricao = descricao; } } Dada a classe Cliente. Escreva uma classe ClienteEspecial que tem, além dos atributos herdados, um atributo do tipo double chamado limiteChequeEspecial. public class Cliente() { private String nome; //campo de instância private int numConta; //campo de instancia public Cliente(String n) //Construtor 1 da Classe Cliente { this(n, 0) //Chama o onstrutor 2 da própria classe } public Cliente(String n, int c) //Construtor 2 da Classe Cliente { nome = n; numConta = c; } public int getNumConta () { return numConta; } public void setNumConta (int numero) { numConta = numero; } } R: public class ClienteEspecial extends Cliente { private double limiteChequeEspecial;//Atributo da Classe } Evento é um acontecimento relevante no meio externo ao sistema relevante. Pode ser considerado como o resultado da interação do usuário com algum componente GUI. A utilização de classes anônimas para tratar os eventos é de longe a mais eficiente quando o código que trata o evento é pequeno ou quando possuímos muitos componentes. Qual a A sintaxe típica para a construção de uma classe anônima ? R: <NomeDaInterface> <nomeDaInstânciaAnônima>= new <NomeDaInterface> { // implementação dos métodos da interface }; Diz-se que uma exceção é lançada para sinalizar alguma falha. O lançamento de uma exceção causa uma interrupção abrupta do trecho de código que a gerou. O controle da execução volta para o primeiro trecho de código (na pilha de chamadas) apto a tratar a exceção lançada. Explique como funciona o tratamento de Exceção em Java R: Uma exceção em Java é um objeto da classe java.lang.Exception, ou de uma de suas subclasses. Como todo objeto, a exceção é capaz de armazenar dados nas suas variáveis de instância. Quando um erro ou situação anormal é encontrado durante a execução de um método, um objeto exceção é construído, e diversos dados sobre essa ocorrência são registrados nos campos desse objeto. Nesse momento, o método onde ocorreu a exceção aborta, e o controle da execução retorna ao método que o chamou. Além disso, por um mecanismo especial, o objeto exceção que foi construído é também enviado ao método chamador. Diz-se que o método onde ocorreu o erro "lança" a exceção para o método que o chamou. Seja o seguinte trecho de código, Java: for(int i=0; i< 10;i++) System.out.print( " o valor de i =" + i); Reescreva o código com o comando while, de modo a produzir o mesmo efeito. R: int i=0; while(i< 10) { System.out.print( " o valor de i =" + i); i++; } Seja o seguinte trecho de código, em Java. if(a==1)System.out.print( " o valor de a = 1"); if(a==2)System.out.print( " o valor de a = 2"); if(a==3)System.out.print( " o valor de a = 3"); if(a==4)System.out.print( " o valor de a = 4"); if(a==5)System.out.print( " o valor de a = 5"); Reescreva o código utilizando o comando switch ... case, de modo a produzir o mesmo efeito. R: switch(a) { case 1: System.out.print( " o valor de a = 1"); break; case 2: System.out.print( " o valor de a = 2"); break; case 3: System.out.print( " o valor de a = 3"); break; case 4: System.out.print( " o valor de a = 4"); break; case 5: System.out.print( " o valor de a = 5"); break; } Escreva a implementação da classe Aluno no formato JavaBean. Esta classe de negócio possui apenas um atributo, String nome. R: public class Aluno { private String nome; public Aluno(){ } public String getNome() { return nome; } public void setNome(String n) { this.nome = n; } } Vetores são estruturas utilizadas para armazenar um conjunto de dados do mesmo tipo. Esses podem ser de qualquer tipo, desde variáveis primitivas até objetos complexos. A sua alocação na memória é sempre contínua. Escreva um trecho de código, em Java, onde seja declarado um vetor de inteiros com 10 posições e inicialize os campos do vetor com o seguinte conjunto de dados: 10, 20, 30, 40,50, 60, 70, 80, 90 e 100. R: int[] vetor= new int[10]; // aloca uma área de memória continua com 10 posições para armazenar 10 inteiros. int[] vetor= {10, 20, 30, 40,50, 60, 70, 80, 90 , 100}; Definir XML parse. R: É um componente que tem por finalidade interpretar a estrutura de um documento XML, baseado num descritor de seus delimitadores (tags), processando a informação constante no arquivo XML para determinada finalidade específica. Como definir Window.sessionStorage? R: É um mecanismo in Memory utilizado para armazenamento de dados na sessão atual do browser do cliente que acessa a aplicação. Um comerciante resolveu dar descontos em sua loja porque as vendas tinham diminuído muito nos últimos quinze dias. Teve uma ideia de confeccionar um cartaz informando que: COMPRAS COM VALORES MENORES QUE R$ 40,00 - desconto de 5% DEMAIS VALORES - desconto de 10% Construa um programa que deixe entrar com o valor da compra e exiba o valor já com desconto. R: #include<stdlib> #include<stdin> float valor, valordesc; int main() { printf("Entre com o valor da compra:\n"); scanf("%f",&valor); if (valorម) { valordesc=valor*0,95; printf("O valor com 5% de desconto é de R$ %5.2f", valordesc); } else { valordesc=valor*0,9; printf("O valor com 10% de desconto é de R$ %5.2f", valordesc); } return 0; } Um professor de Linguagem de Programação I pediu a um aluno que desenvolvesse um programa codificado na linguagem C para que ele pudesse calcular a nota da AV1 que seria composta de duas notas: prova e seminário. Entretanto, ele informou que, se a nota da prova fosse menor do que 4.0, então, não valeria a nota do seminário, ficando a nota da AV1 só com a nota da prova. Caso contrário, Seri a feita a média aritmética para compor a no ta da AV1. Ajude ao aluno, escrevendo esse código R: #include <stdio.h> #include <stdio.h> int main() { float prova, sem inario,m edia; printf("\nNota da prova: \n") ; scanf("%f", &prov a); printf("\nNota do seminario: \n") ; scanf("%f", &sem inario); if ( prova < 4) printf("\nNot a da AV1: %.1f \n", prova) ; else { m edia=(prova+seminario)/2; printf("\nNot a da AV1: %.1f \n", media) ; } }
Compartilhar