Дали нам задание сделать [Funktionsplotter] на языке [Java].
Вот уже неделю немогу программу до ума довести...
Программа должна ресовать функцию по интервалу, которы я задам в программе.
Проблема в том што когда я хочю использывать функзию
[g.drawLine()] мне нужно использывать интергер.
А у меня [variablen] в формате [float]
Как их в [integer] можно перевести?
В интернете я нашол вот это[x = Math.round((int)(x/10.0));]
, но всеравно не работает.
Вот программа:
Java
import java.applet.Applet;
import java.awt.Graphics;
import java.awt.*;
import java.io.*;
import java.awt.*;
import javax.swing.*;
import java.applet.*;
import java.lang.Math;
import java.lang.Float;
public class Funktionsplotter extends JApplet
{
public float fmax;
public float fmin;
public int breite=10;
public int hoehe=10;
public float xmax= 10;
public float xmin= -10;
float f(float x)
{
return (x*x-2*x+2);
}
float fmax_berechnen(float xmin,float xmax,int breite)
{
float wert = 0;
float x = 0;
float deltax = 0;
x = xmin;
wert = f(xmin);
deltax = (xmax-xmin)/breite;
for (int i=1;i<breite;i++)
{
if (wert < f(x+deltax))
{
wert = f(x+deltax); //wert wird jetzt grцЯer
}
x = x + deltax;
}
return wert;
}
float fmin_berechnen(float xmin,float xmax,int breite)
{
float wert = 0;
float x = 0;
float deltax = 0;
x = xmin;
wert = f(xmin);
deltax = (xmax-xmin)/breite;
for (int i=1;i<breite;i++)
{
if (wert > f(x+deltax))
{
wert = f(x+deltax); //wert wird jetzt kleiner
}
x = x + deltax;
}
return wert;
}
void Funktionsplotter(Graphics g)
{
fmax = fmax_berechnen(xmin,xmax,breite);
fmin = fmin_berechnen(xmin,xmax,breite);
float dy = (fmax - fmin)/hoehe;
for(float x = xmin ; x < breite ; x++)
{
float y = f(x);
x = Math.round((int)(x/10.0));
y = Math.round((int)(y/10.0));
g.drawLine(x-1, f(x) ,x,y);
}
}
}
Показать весь код
Кто знает как конвертировать[float] в [Integer] ?