Gå til innhold

Gi meg enkle java oppgver!


Anbefalte innlegg

Videoannonse
Annonse

-Finn ut hvordan du kan addere to tall, hent tallene inn fra bruker, men du må også finne ut hvordan håndtere to ugyldige inputs. (eks du ber om to tall, jeg skriver inn "mordi" og "rompetroll" i inputfelt)

 

-utvid den overfor til å la bruker kunne velge operasjon ( gange, dele, pluss, minus)

 

-en båt går i 15 km/h, den andre går i 20 knop . Finn ut når båt 2 er minst X antall meter forran/bak båt 1. Her må du regne om til en felles enhet. Anta konstant fart på begge båter

 

 

Anta at den som skal vurdere koden din, kommer fra USA eller et annet engelskspråklig land.

Endret av dabear
Lenke til kommentar

-Finn ut hvordan du kan addere to tall, hent tallene inn fra bruker, men du må også finne ut hvordan håndtere to ugyldige inputs. (eks du ber om to tall, jeg skriver inn "mordi" og "rompetroll" i inputfelt)

 

-utvid den overfor til å la bruker kunne velge operasjon ( gange, dele, pluss, minus)

 

-en båt går i 15 km/h, den andre går i 20 knop . Finn ut når båt 2 er minst X antall meter forran/bak båt 1. Her må du regne om til en felles enhet. Anta konstant fart på begge båter

 

 

Anta at den som skal vurdere koden din, kommer fra USA eller et annet engelskspråklig land.

 

Takk :)

 

 

 

Lag en røverspråk-enkoder/dekoder. Det er en fin og lett begynneroppgave.

 

 

Takk ;)

Lenke til kommentar

-Finn ut hvordan du kan addere to tall, hent tallene inn fra bruker, men du må også finne ut hvordan håndtere to ugyldige inputs. (eks du ber om to tall, jeg skriver inn "mordi" og "rompetroll" i inputfelt)

 

-utvid den overfor til å la bruker kunne velge operasjon ( gange, dele, pluss, minus)

 

-en båt går i 15 km/h, den andre går i 20 knop . Finn ut når båt 2 er minst X antall meter forran/bak båt 1. Her må du regne om til en felles enhet. Anta konstant fart på begge båter

 

 

Anta at den som skal vurdere koden din, kommer fra USA eller et annet engelskspråklig land.

 

Jeg finner ikke ut hvordan jeg kan velge mellom de 4 regnemåtene :O Hjelp`?

Lenke til kommentar

Hva slags variabel skal jeg bruke til det?

 

Det der er jo ting du egentlig burde prøve å finne ut selv og eksperimentere så mye som mulig. Det er sånn man virkelig får nytte av å gjøre oppgavene, i etterkant når du har fått mer erfaring vil du kunne gå tilbake til oppgavene å se måter du kunne gjort ting bedre/enklere på ;)

Det er ingen gitt fasit her og du skal i teorien fint klare å bruke hvilken som helst variabel.

 

Jeg kan si at for ett slikt enkelttegn ville jeg brukt char, siden den lagrer et tegn i unicode.

 

Eksempel på bruk:

 

 

char regneOperator = '/';

if(regneOperator == '/'){
  //Do crap
}

 

 

 

Hvordan du skal flette dette inn i koden din bør du sette av litt tid til å tenke på selv før du kommer tilbake hit og spør om hjelp ;)

Lenke til kommentar

Når du føler deg komfortabel nok, kan du prøve å lage en klasse som fungerer på følgende måte:

 

Map map = new Map();

map.put("number", 3);
map.put("five", 5);
map.put("threePlusThree", 6);

map.get("number"); // Skal hente ut int-en 3.
map.get("five"); // Skal hente ut int-en 5.
map.get("threePlusThree"); // Skal hente ut int-en 6.

map.put("number", 42); // Skal "skrive over" 3.
map.get("number"); // Skal nå hente ut int-en 42.

 

Lykke til!

Endret av LostOblivion
Lenke til kommentar

Hei, har prøvd meg litt på dette. Kom fram til hvordan jeg skulle lage kalkulator med valg av operasjoner:

 

 

import java.util.Scanner;
public class kalulator {

public static int num1, num2, svar;
public static String oper;

public static void main(String[] args){
 calcu();
}
 static void calcu(){
  Scanner scan = new Scanner(System.in);

  System.out.println("Velkomment til kalkulator 1.0 av Iver:\n");
  System.out.println("Venligst gi meg et tall:");
  num1 = scan.nextInt();

  System.out.println("Venligst velg en oprasjoner(+, -, *, /)");
  oper = scan.next();

  System.out.println("Venligst gi meg et nytt tall:");
  num2 = scan.nextInt();

  System.out.print("\nSvaret er: ");
  System.out.print((oper.equals("+")? svar = num1 + num2 : ""));
  System.out.print((oper.equals("-")? svar = num1 - num2 : ""));
  System.out.print((oper.equals("*")? svar = num1 * num2 : ""));
  System.out.print((oper.equals("/")? svar = num1 / num2 : ""));
  scan.close();
 }

 }

 

 

Men må nok jobbe videre med hvordan den skal håndtere ting som ikke er tall :p

Lenke til kommentar

Ikke i det hele tatt.

 

Sjekk her: http://docs.oracle.c...l#nextInt%28%29

 

Dette er dokumentasjon for hvordan nextInt fungerer. Du ser at dersom den ikke finner et tall, kaster den en InputMismatchException. Dette kan du bruke til å håndtere unntak i programmet ditt, som er en vanlig del av programmering.

 

Du kan f.eks. skrive:

 

System.out.println("Venligst velg operasjon (+, -, *, /)");
try {
 num1 = scan.nextInt();
} catch (InputMismatchException ex) {
 System.out.println("Du tastet ikke inn et tall.";
 scan.next(); // Les forbi det som ikke var et tall uten å bruke det.
}

 

Dersom du vil at brukeren skal kunne prøve igjen, kan du skrive følgende.

 

boolean inputOk = false;
while (!inputOk) {
 System.out.println("Venligst velg operasjon (+, -, *, /)");
 try {
num1 = scan.nextInt();
inputOk = true; // Dersom linjen over kaster exception, kommer den ikke hit.
 } catch (InputMismatchException ex) {
System.out.println("Du tastet ikke inn et tall. Prøv igjen.";
scan.next(); // Les forbi det som ikke var et tall uten å bruke det.
 }
}

Endret av LostOblivion
Lenke til kommentar

Hei, har prøvd meg litt på dette. Kom fram til hvordan jeg skulle lage kalkulator med valg av operasjoner:

 

 

import java.util.Scanner;
public class kalulator {

public static int num1, num2, svar;
public static String oper;

public static void main(String[] args){
 calcu();
}
 static void calcu(){
  Scanner scan = new Scanner(System.in);

  System.out.println("Velkomment til kalkulator 1.0 av Iver:\n");
  System.out.println("Venligst gi meg et tall:");
  num1 = scan.nextInt();

  System.out.println("Venligst velg en oprasjoner(+, -, *, /)");
  oper = scan.next();

  System.out.println("Venligst gi meg et nytt tall:");
  num2 = scan.nextInt();

  System.out.print("\nSvaret er: ");
  System.out.print((oper.equals("+")? svar = num1 + num2 : ""));
  System.out.print((oper.equals("-")? svar = num1 - num2 : ""));
  System.out.print((oper.equals("*")? svar = num1 * num2 : ""));
  System.out.print((oper.equals("/")? svar = num1 / num2 : ""));
  scan.close();
 }

 }

 

 

Men må nok jobbe videre med hvordan den skal håndtere ting som ikke er tall :p

 

Koden ser helt grei ut, men er et par ting som er greit å få med seg. Normalt sett har klassenavn stor forbokstav. Metodenavn har små(dette har du gjort rett).

 

 

En annen oppgave du kan gjøre er å skrive de 30 første Fibonacci tallene til fil.

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...