Exercicis Dades i variables

(*) elteuusuari correspon a la direcció de correu eltectrònic del centre, sense punts, fins a @itb.cat

Sumari

  1. Enters
    1. IntDoubleMe
    2. IntSum
    3. IntRectangleArea
    4. CrazyOperation
    5. Desks
      1. Input
      2. Ouput
    6. Salary
    7. CompilationError
  2. Double
    1. DoubleDoubleMe
    2. CalculateDiscount
    3. HowBigIsMyPizza
    4. AirVolumeCalculator
  3. Boolean
    1. IsLegalAge
    2. IsGreater
    3. IsValidNote
    4. IsDivisible
    5. IsTeenager
    6. BirthdayCelebrated
    7. InRange
    8. WorkingAge
  4. Strings
    1. HelloToMe
    2. NextNumber
  5. Variables
    1. PrintCurrentTemperature
  6. Conversions
    1. CutFractional
  7. Tipus Compostos
    1. BusinessCardPrinter
    2. GameCharacter
    3. Pirate
      1. Output:
  8. Avançats
    1. BiggerPizza
    2. DivideBill
    3. TimeTravelHelper
  9. Repàs
    1. IsOdd
      1. Input
      2. Output
    2. NiceDivide
      1. Input
      2. Output
    3. OneIs10
    4. AverageSpeed
    5. IsSallaryEnough
      1. Input
      2. Output

Enters

IntDoubleMe

Llegeix un enter i imprimeix el doble del valor entrat.

IntSum

Llegeix dos enters i imprimeix la suma dels dos.

IntRectangleArea

Una web d'habitatges de lloguer ens ha proposat una ampliació. Volen mostrar l'àrea de les habitacions en lloguer. Fes un programa que ens ajudi a calcular les dimensions d'una habitació. Llegeix l'amplada i la llargada en metres (enters) i mostra'n l'àrea

CrazyOperation

L'usuari escriu 4 enters i s'imprimeix el valor de suma el primer amb el segon, mutiplicat per la resta del tercer amb quart.

Desks

En una escola tenim tres classes i volem saber quin és el número de pupitres que necessitarem tenir en total. Dependrà del número d'alumnes per aula. Cal tenir en compte que a cada pupitre hi caben 2 alumnes. Llegeix tres valors corresponents al número d'alumnes de cada aula i mostra el total de pupitres

Input

22
25
26

Ouput

37

Salary

A un treballador li paguen per hores, a partir de 40 hores de treball la tarifa per hora s'incrementa en un 50%. Escriu un algorisme que demani les hores treballades i mostri com a resultat el salari del treballador, tenint en compte
que la tarifa per hora és de 40 eur/h.

CompilationError

Defineix una variable de tipus enter i inicialitxa-la amb un valor de diferent tipus per exemple: 3.5 Quin tipus d'error es genera?

Double

DoubleDoubleMe

Llegeix un valor amb decimals i imprimeix el doble.

CalculateDiscount

Llegeix el preu original i el preu actual i imprimeix el descompte (en %).

HowBigIsMyPizza

Llegeix el diametre d'una pizza rodona i imprimeix la seva superfície. Pots usar Math.PI per escriure el valor de Pi.

AirVolumeCalculator

Per poder fer un estudi de la ventilació d'una aula necessitem poder calcular la quantitat d'aire que hi cap en una habitació. Llegeix les 3 dimensions de l'aula i printa per pantalla quin volum té.

Boolean

IsLegalAge

L'usuari escriu un enter amb la seva edat i s'imprimeix true si és major d'edat, i false en qualsevol altre cas.

IsGreater

L'usuari escriu dos valors i s'imprimeix true si el primer és més gran que el segon i false en qualsevol altre cas.

IsValidNote

L'usuari escriu un enter i s'imprimeix true si existeix un bitllet d'euros amb la quantitat entrada, false en qualsevol altre cas.

IsDivisible

L'usuari escriu dos valors enters.
Imprimeix si el primer és divisible pel segon (si el mòdul de dividir el primer amb el segon és 0).

IsTeenager

L'usuari escriu un enter amb la seva edat i s'imprimeix true si l'edat està entre 10 i 20.

BirthdayCelebrated

Digues si una persona ha celebrat l'aniversari enguany. Suposarem les variables següents: diaAniversari, mesAniversari, diaActual, MesActual

InRange

Escriu un programa que llegeixi 5 enters. El primer i el segon creen un rang, el tercer i el quart creen un altre rang. Mostra true si el cinquè valor està entre els dos rangs, sino false.

WorkingAge

Escriu un programa que llegeixi l'edat de l'usuari i mostri si té edat per treballar, l'edat mínima per treballar legalment és 16 i suposarem l'edat màxima als 65.

Strings

HelloToMe

L'usuari escriu el seu nom i printa per pantalla "Bon dia nom introduït"

NextNumber

L'usuari escriu un número enter. Printa per pantalla el número següent amb el format: "Després ve el 5".

Variables

PrintCurrentTemperature

Demana a l'usuari la temperatura actual i un augment de temperatura. Imprimeix per per pantalla: La temperatura actual és 45.2º. Usa una variable per guardar la temperatura actual.

Conversions

CutFractional

Escriu un programa que llegeixi un número, en talli la seva part fraccionària i mostri la part entera de l'input com a resultat.
Utilitza un Double com a tipus d'entrada (input) i Long com a resultat (output) - Els valors poden ser prou llargs

Tipus Compostos

BusinessCardPrinter

Volem fer un programa per imprimir targetes de visites.
Demana a l'usuari el nom i el 1r cognom i el número despatx on treballa. Guarda't la informació en una classe nova.
Imprimeix el següent text:

Empleada: Mar Puig - Despatx: 24

GameCharacter

Volem fer un joc 2D en la que diferents robots (tancs) lluiten al'arena. Tots els robots tenen les mateixes característiques, el que varia és la IA que els controla. Has de crear la classe robot per a què cada usuari pugui definir el seu robot.
Per ara sabem que:
- El robot té un cos: permet al robot desplaçar-se y girar. Per tant guardarem la seva posició. Es distingirà pel seu color.
- Quan el tanc xoca perd vida
- Quan el tanc dispara i encerta guanya vida proporcionalment

Pirate

El següent codi mostra el nom del capità del barco, la tripulació

vol reescollir el capità, ara serà el Jack Sparrow.

Modifica la declaració del capità i canvia'l de Hector Barbossa a Jack Sparrow. Després imprimeix el nom del capità actual.
Crea la classe Pirate

Output:

Hector Barbossa

Jack Sparrow
var captain = Pirate("Hector Barbossa")

println(captain.name) // Do not touch this line
// put your code here

Avançats

BiggerPizza

Volem comparar quina pizza és més gran, entre una rectangular i una rodona
L'usuai entra el diametre d'una pizza rodona
L'usuari entra els dos costats de la pizza rectangular
Imprimeix true si la pizza rodona és més gran, o false en qualsevol altre cas.

DivideBill

L'usuari introdueix el número de començals i el preu d'un sopar en cèntims d'euro.
Imprimeix quan haurà de pagar cada començal.

TimeTravelHelper

Després de molt d'esforç hem aconseguit dissenyar una màquina del temps. Només ens falta una utilitat, necesitem un petit programa que ens indiqui en quin dia estem. Fes un programa que imprimeixi per pantalla el següent missatge Avui és: 2021-09-17. Usa LocalDate.now() per obtenir la data actual.

Repàs

IsOdd

Volem fer un programa que ens indiqui si un valor es enter o senar.

Input

5

Output

true

NiceDivide

Volem fer un programa que ens ajudi a fer divisions sense decimals.

Input

11 2

Output

11 dividit entre 2 és 5 mòdul 1

OneIs10

AverageSpeed

IsSallaryEnough

Un home vol llogar un apartament al centre de la ciutat. Aquest home guanya valor1 euros per hora. Penseu que treballa 6 hores diàries durant 5 dies a la setmana durant quatre setmanes. L’apartament costa valor2 euros per quatre setmanes. També heu de suposar que heu de plantejar-vos gastar valor3 euros cada quatre setmanes per altres motius.
Imprimeix true si es pot permetre l'apartament o false si no pot.

L'usuari introuïra en el següent ordre

Input

42
1200
1400

Output

true