Avatar billede fotobob Nybegynder
14. september 2004 - 11:02 Der er 15 kommentarer og
1 løsning

Formel til vægtberegning ?

Hejsa

jeg skal til at lave et program hvor man indtaster højde og vægt, for at få udregnet om man vejer for meget.

Er der nogen der har de inputs (tal) jeg skal bruge?

Venlig hilsen
fotobob
Avatar billede arne_v Ekspert
14. september 2004 - 11:08 #2
Der findes mange forskellige formler for det.

Engang hed det:

if(w > (h - 100))

w = vægt i kg
h = højde i cm

Nu om dage mener jeg meget at man opererer med det såkaldte BMI.
Avatar billede fotobob Nybegynder
14. september 2004 - 11:10 #3
esoulman, takker.
Avatar billede esoulman Nybegynder
14. september 2004 - 11:10 #4
:)
Avatar billede fotobob Nybegynder
14. september 2004 - 12:44 #5
en der gider kigge på min kode, der er vist en fejl, den siger der mangler et semikolon, men jeg kann ikke se hvor det skulle være?
det er når jeg kombilerer til bytecode.
Avatar billede trp79 Nybegynder
15. september 2004 - 09:51 #6
Prøv engang at post koden - det har jo stadig relevans i forhold til overskriften på dette indlæg :)
Avatar billede fotobob Nybegynder
15. september 2004 - 13:24 #7
mport java.util.Scanner;

public class vaegtberegner
{
public static void main (String [] args)


double hoejde,vaegt, bmi,gran1 , gran2 , gran3 , gran4;
double gran1 = < 18,5;
double gran2 = > 18,6 < 24,9;
double gran3 = > 25 < 29,9;
double gran4 = > 30;
{

Scanner scan = new Scanner(System.in);

System.out.print ("Indtast din højde:");
hoejde = scan.nextDouble();

System.out.print ("Indtast din vægt:");
vaegt = scan.nextDouble();

bmi = vaegt / (hoejde * hoejde);

if (bmi=gran1)
System.out.println ("Du er undervægtig");
if (bmi = gran2)
System.out.println (" Du har din idealvægt");
if (bmi=gran3)
System.out.println (" Du er overvægtig");
if (bmi=gran4)
System.out.println ("Du er MEGAFED");
}
}

gran 1,2 osv. er bare fo at angive ordet "grænse"
Avatar billede arne_v Ekspert
15. september 2004 - 13:35 #8
prøv:

import java.io.*;

public class BMI {
    private static double gran1 = 18.5;
    private static double gran2 = 25;
    private static double gran3 = 30;
    public static void main(String[] args) throws Exception {
        double hoejde, vaegt, bmi;
        BufferedReader scan = new BufferedReader(new InputStreamReader(System.in));

        System.out.print("Indtast din højde:");
        hoejde = Double.parseDouble(scan.readLine());

        System.out.print("Indtast din vægt:");
        vaegt = Double.parseDouble(scan.readLine());

        bmi = vaegt / (hoejde * hoejde);

        if (bmi < gran1)
            System.out.println("Du er undervægtig");
        else if (bmi < gran2)
            System.out.println(" Du har din idealvægt");
        else if (bmi < gran3)
            System.out.println(" Du er overvægtig");
        else
            System.out.println("Du er MEGAFED");
    }
}
Avatar billede arne_v Ekspert
15. september 2004 - 13:35 #9
Ubehøvlet program iøvrigt !!!!

:-)
Avatar billede trp79 Nybegynder
15. september 2004 - 13:38 #10
Okay, der er et par fejl.
1)
Du skal have en flyttet din anden tuborg start klamme(den du har efter double gran4 = > 30;), således at alle variablerne tildeles værdier inde i main metoden. Et alternativ var at flytte variablerne uden for(op over) main metoden.

2)
Når du giver en variabel en værdi, så skal det være en bestemt værdi, og ikke mange værdier.
Altså kan man ikke sige gran1 = < 18,5 da det vil give variablen gran1 MANGE værdier (tænk på hvor mange tal der er under 18,5!) Istedet skal du lave dine kriterier i if sætninger. Noget ala:
if (bmi<gran1)
System...
else if(gran1 >= bmi && bmi< gran2)
System....
Avatar billede fotobob Nybegynder
15. september 2004 - 16:16 #11
arne v, den kan sagtens kombileres....tak for hjælpen!
Men lige gyldigt hvad man indtaster får man den samme "du er undervægtig" meddelelse.

og hvad import java.io.*; betyder denne sætning i forhold til den anden jeg havde?
IO?
Avatar billede arne_v Ekspert
15. september 2004 - 16:20 #12
Du skal indtaste højden i meter ikke i cm. Altså 1.88 ikke 188 !
Avatar billede arne_v Ekspert
15. september 2004 - 16:22 #13
Jeg har ikke en java.util.Scanner (på 1.4.1), så jeg brugte nogle klasser
i java.io til at gøre det samme.
Avatar billede fotobob Nybegynder
15. september 2004 - 16:25 #14
okay super, kan jeg så lave den om til import java.util.Scanner; ?
Avatar billede arne_v Ekspert
15. september 2004 - 16:31 #15
Ja hvis du retter de linier der klser bruger input også.
Avatar billede fotobob Nybegynder
15. september 2004 - 16:41 #16
ok
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester