Jump to content

Recommended Posts

Posted

Boa tarde,

gostaria de saber se alguem disponivel na comunidade para me ajudar a resolver um enunciado de um exame que tenho para fazer.

eu sou aluno do primeiro ano de engenharia informatica e estou a ter serias dificuldades em fazer a disciplina, para piorar a situaçao tenho enunciados de alguns exames anteriores, mas nao os sei resolver.

se alguem puder por favor entrem em contacto comigo, obrigado

Posted (edited)

1. Considere as seguintes declarações de variáveis:

int numero = 17;

double media = 13.5;

boolean positivo = true;

char letra = 'a';

int resultado = 0;

Para cada uma delas, diga qual o erro que apresenta, ou, caso não exista erro, o resultado final da sua

execução.

a) resultado = numero * 2;;

b) resultado = numero + media;

c) numero = letra;

d) media = positivo;

e) media = numero;

2. Considere o seguinte código:

public static void main(String[] args) {

int a = 2;

int b = 3;

int c = ++b;

int d = a++;

d++;

}

Qual o resultado das variáveis a, b, c e d após executar o código apresentado?

3. Para cada um dos seguintes ciclos, diga qual o valor das variáveis num e valor após executar

cada bloco de código:

a) int num = 2, valor = 0;

while(valor < num){

++ valor;

}

b) int num = 2, valor = 0;

do{

++ valor;

}while(valor < num);

c) int num = 2;

int valor = num++;

for(int i= 0; i < num; i++)

valor++;

d) int valor = 0, num = 2;

for(int i=0; i<num; i++, valor++)

valor++;

4. A função do código apresentado é pedir um número ao utilizador e depois verificar se esse

número existe num array de inteiros previamente definido.

No entanto o programa apresenta incorreções. Indique-as e corrija-as.

public class escolhas {

static int verifica(int []dados, int num){

for(int i=0; i< dados.length; i++)

if(num == dados)

return true;

return false;

}

public static void main(String[] args) {

Scanner input = new Scanner(System.in);

int [] valores = {2,5,6,8,12,9,4};

int num = input.nextInt();

boolean estado = verifica(num, valores);

System.out.println(estado);

}

}

5. Considere o seguintes métodos:

static int maior(int num1, int num2){

if(num1 > num2)

return num1;

else

return num2;

}

static int valor(double num){

return (int) num;

}

5.1 Indique a função de cada um dos métodos apresentados.

5.2 Considerando o seguinte código escrito no main, indique, para cada uma das alíneas, se o código

apresentado está correto ou se apresenta erros. Caso apresente erros, diga quais são.

a) boolean valor = maior(3,9);

b) int resultado = maior(4,7) + valor(12.4) + 3.1;

c) int resultado = valor(8)++;

d) int resultado = maior(7,valor(5.6));

6. Escreva um programa que peça ao utilizador a altura, o comprimento e a largura de uma caixa e

calcule e apresente o seu volume.

7. Escreva um programa que peça um número positivo ao utilizador e que depois escreva na

consola todos os números inteiros pares menores do que esse número.

8. Considere os seguintes trabalhadores de uma empresa: Luís, Jorge, Paulo, Rosa, Cristina, Carlos,

Francisco, José e as suas idades pela mesma ordem: 23, 45, 32, 27, 31, 31, 50, 24.

8.1. Escreva um método que aceite como argumento as idades dos trabalhadores e calcule e

devolva a sua média.

8.2. Escreva um método que, recebendo os arrays de nomes e idades como argumentos, leia o

nome de um trabalhador da consola e retorne a sua idade.

9. Escreva um método que receba um número inteiro e devolva um boolean indicando se o número

é primo ou não.

10. Escreva um método que solicite ao utilizador um máximo de 20 números não primos e os

armazene num array que também recebe como argumento. O utilizador pode parar de introduzir

números inserindo o valor -1. O método deve utilizar o método implementado na alínea anterior

para validar se cada número fornecido pelo utilizador é primo ou não. O método deve ainda

devolver quantos números não primos foram efetivamente lidos.

Eu nao entendo arrays nem métodos e tambem sou bastante mau a encontrar erros no codigo

Edited by looord
Posted

ich, tá complicado.

O melhor era tentares ir resolvendo os exercícios 1 a 1 e colocares os teus resultados/dúvidas para a malta te ir explicando.

Já agora, por curiosidade, onde estás a tirar o curso?

Posted

ich, tá complicado.

O melhor era tentares ir resolvendo os exercícios 1 a 1 e colocares os teus resultados/dúvidas para a malta te ir explicando.

Já agora, por curiosidade, onde estás a tirar o curso?

Eu estou a tentar mas por incrivel que pareça dos exercicios que valem mais (digo apartir do 6) nao sei fazer nada=/

Estou a tirar na Escola superior de Tecnologia de castelo branco

Posted

não precisas de declarar um array. Um exemplo simples

 Scanner ler = new Scanner(System.in);
 double altura;
 double comp;
 double largura;
 System.out.println("Introduza a altura");
 altura = ler.nextDouble();
 System.out.println("Introduza a comp");
 comp = ler.nextDouble();
 System.out.println("Introduza a largura");
 largura = ler.nextDouble();
 //calculas o volume
//apresentas o volume
  • Vote 1
Posted

não precisas de declarar um array. Um exemplo simples

 Scanner ler = new Scanner(System.in);
 double altura;
 double comp;
 double largura;
 System.out.println("Introduza a altura");
 altura = ler.nextDouble();
 System.out.println("Introduza a comp");
 comp = ler.nextDouble();
 System.out.println("Introduza a largura");
 largura = ler.nextDouble();
 //calculas o volume
//apresentas o volume

huummm nao conhecia o scanner ler, , calcular os volumes safo-me 🙂 o problema mesmo sao os arrays e os metodos, nao os sei usar,mas obrigado pela ajuda 😉

Estou aqui de volta deste codigo:

int valor = 0, num = 2;

for(int i=0; i<num; i++, valor++)

valor++;

eu pus o codigo no compilador e usei println para ver os valores das variaveis deu num=2; valor=4; e nao entendo porque razao deu esses valores... o ciclo nao deveria terminar quando o valor fosse igual a 2?

Posted (edited)

Sim, e é o que faz, só que tu estás a incrementar o valor 2 vezes por cada iteração do ciclo:

for(int i=0; i<num; i++, valor++) <-- uma aqui
valor++; <-- outra aqui
Edited by Flinger
Posted (edited)

Exacto o ciclo devia parar quando i=2 , isso significa que o ciclo vai dar duas "voltas" e o valor e incrementado 2 vezes em cada ciclo?

Obrigado, ja entendi este 🙂

Edited by looord
Posted (edited)

vamos fazer primeiro 8.1

8.1. Escreva um método que aceite como argumento as idades dos trabalhadores e calcule e

devolva a sua média.

receber um array idades

pecorrer o array de idades e somar as idades

no final dividir esse valor por o numero de elementos do array.

Edited by AJBM

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.