problem zadatak prelamanje svetlosti

problem zadatak prelamanje svetlosti

offline
  • Huskar
  • Pridružio: 31 Maj 2008
  • Poruke: 885

Imam problem sa jednim zadatkom, uradio sam u C++ zadatak jedan, ali sada sma hteo to u javi da odradim, i izbacuje mi konstante greske.

public class GlobalMembersQw {     public static int Main()     {     double a;     double b;     double c;     double d;     byte e;     System.out.print("Brojni materijali imaju dobro definisan indeks prelamanja koji");     System.out.print("\n");     System.out.print("medjutim, zavisi od talasne duzine zracenja.");     System.out.print("\n");     System.out.print("Zbog toga je numericka vrednost indeksa");     System.out.print("\n");     System.out.print("potpuno nekorisna ako se ne naznaci");     System.out.print("\n");     System.out.print("talasna duzina na koju se odnosi.");     System.out.print("\n");     System.out.print("\n");     System.out.print("\n");     System.out.print("Talasna duzina je 589,3nm, dok je za indeks prelamanja prve sredine uzet vazduh ciji je isti=1");     System.out.print("\n");     System.out.print("\n");     System.out.print("\n");     System.out.print("Unesi ugao posmatranja(u stepenima):");     System.out.print("\n");     cin>>a;     System.out.print("Izaberite indeks prelamanja druge sredine:\n1.Dijamant\n2.Voda\n3.Led\n4.Glicerol\n5.Galijum(III)Fosfid\n");     System.out.print("6.Galijum(III)Arsenid\n7.Silicijum\n8.Brom\n9.Kamena so\n10.Etanol");     System.out.print("\n");     System.out.print("\n");     cin>>e;     if(e == '1')     {     b = Math.sin(a *DefineConstants.PI/180)*DefineConstants.V/2.419;     c = Math.asin(b);     d = c *180/DefineConstants.PI;     }     else if (e == '2')     {     b = Math.sin(a *DefineConstants.PI/180)*DefineConstants.V/1.33;     c = Math.asin(b);     d = c *180/DefineConstants.PI;     }     else if (e == '3')     {     b = Math.sin(a *DefineConstants.PI/180)*DefineConstants.V/1.31;     c = Math.asin(b);     d = c *180/DefineConstants.PI;     }     else if (e == '4')     {     b = Math.sin(a *DefineConstants.PI/180)*DefineConstants.V/1.4729;     c = Math.asin(b);     d = c *180/DefineConstants.PI;     }     else if (e == '5')     {     b = Math.sin(a *DefineConstants.PI/180)*DefineConstants.V/3.5;     c = Math.asin(b);     d = c *180/DefineConstants.PI;     }     else if (e == '6')     {     b = Math.sin(a *DefineConstants.PI/180)*DefineConstants.V/3,927;     c = Math.asin(b);     d = c *180/DefineConstants.PI;     }     else if (e == '7')     {     b = Math.sin(a *DefineConstants.PI/180)*DefineConstants.V/4.01;     c = Math.asin(b);     d = c *180/DefineConstants.PI;     }     else if (e == '8')     {     b = Math.sin(a *DefineConstants.PI/180)*DefineConstants.V/1.661;     c = Math.asin(b);     d = c *180/DefineConstants.PI;     }     else if (e == '9')     {     b = Math.sin(a *DefineConstants.PI/180)*DefineConstants.V/1.516;     c = Math.asin(b);     d = c *180/DefineConstants.PI;     }     else if (e == '10') { b = Math.sin(a *DefineConstants.PI/180)*DefineConstants.V/1.516; c = Math.asin(b); d = c *180/DefineConstants.PI; } else {cout<<"Pogresan karakter.Pokrenuti ponovo program i uneti broj u opsegu [1-10]."<<"\n"; cout<<"\n"; return 0; } cout<<"Prelomljeni ugao je: " <<d<<" stepeni"<<"\n"; return 7; } } final class DefineConstants {     public static final double PI = 3.1415926535898;     public static final int V = 1; }


Postavljam i C++ kod
#include<iostream> #include<cmath> #include<string> #define PI 3.1415926535898 #define V 1 using namespace std; int main() { double a,b,c,d; char e; cout<<"Brojni materijali imaju dobro definisan indeks prelamanja koji"<<endl; cout<<"medjutim, zavisi od talasne duzine zracenja."<<endl; cout<<"Zbog toga je numericka vrednost indeksa"<<endl; cout<<"potpuno nekorisna ako se ne naznaci"<<endl; cout<<"talasna duzina na koju se odnosi."<<endl; cout<<endl; cout<<endl; cout<<"Talasna duzina je 589,3nm, dok je za indeks prelamanja prve sredine uzet vazduh ciji je isti=1"<<endl; cout<<endl; cout<<endl; cout<<"Unesi ugao posmatranja(u stepenima):"<<endl; cin>>a; cout<<"Izaberite indeks prelamanja druge sredine:\n1.Dijamant\n2.Voda\n3.Led\n4.Glicerol\n5.Galijum(III)Fosfid\n"; cout<<"6.Galijum(III)Arsenid\n7.Silicijum\n8.Brom\n9.Kamena so\n10.Etanol"<<endl; cout<<endl; cin>>e; if(e=='1') { b=sin(a*PI/180)*V/2.419; c=asin(b); d=c*180/PI; } else if (e=='2') { b=sin(a*PI/180)*V/1.33; c=asin(b); d=c*180/PI; } else if (e=='3') { b=sin(a*PI/180)*V/1.31; c=asin(b); d=c*180/PI; } else if (e=='4') { b=sin(a*PI/180)*V/1.4729; c=asin(b); d=c*180/PI; } else if (e=='5') { b=sin(a*PI/180)*V/3.5; c=asin(b); d=c*180/PI; } else if (e=='6') { b=sin(a*PI/180)*V/3,927; c=asin(b); d=c*180/PI; } else if (e=='7') { b=sin(a*PI/180)*V/4.01; c=asin(b); d=c*180/PI; } else if (e=='8') { b=sin(a*PI/180)*V/1.661; c=asin(b); d=c*180/PI; } else if (e=='9') { b=sin(a*PI/180)*V/1.516; c=asin(b); d=c*180/PI; } else if (e=='10') { b=sin(a*PI/180)*V/1.516; c=asin(b); d=c*180/PI; } else {cout<<"Pogresan karakter.Pokrenuti ponovo program i uneti broj u opsegu [1-10]."<<endl; cout<<endl; return 0; } cout<<"Prelomljeni ugao je: " <<d<<" stepeni"<<endl; return 7; }



Registruj se da bi učestvovao u diskusiji. Registrovanim korisnicima se NE prikazuju reklame unutar poruka.
offline
  • Srđan Tot
  • Am I evil? I am man, yes I am.
  • Pridružio: 12 Jul 2005
  • Poruke: 2483
  • Gde živiš: Ljubljana

Koliko vidim, koristiš na par mesta cin i cout u javi, a to neće da može Smile



offline
  • Huskar
  • Pridružio: 31 Maj 2008
  • Poruke: 885

A da, da, vidim, ali nece ni kada ubacim System.out.print

offline
  • Srđan Tot
  • Am I evil? I am man, yes I am.
  • Pridružio: 12 Jul 2005
  • Poruke: 2483
  • Gde živiš: Ljubljana

Daj nam greške koje dobiješ, pa da vidimo šta je problem.

offline
  • Huskar
  • Pridružio: 31 Maj 2008
  • Poruke: 885

Ovo je kod,
public class GlobalMembersQw {     public static int Main()     {     double a;     double b;     double c;     double d;     byte e;     System.out.print("Brojni materijali imaju dobro definisan indeks prelamanja koji");     System.out.print("\n");     System.out.print("medjutim, zavisi od talasne duzine zracenja.");     System.out.print("\n");     System.out.print("Zbog toga je numericka vrednost indeksa");     System.out.print("\n");     System.out.print("potpuno nekorisna ako se ne naznaci");     System.out.print("\n");     System.out.print("talasna duzina na koju se odnosi.");     System.out.print("\n");     System.out.print("\n");     System.out.print("\n");     System.out.print("Talasna duzina je 589,3nm, dok je za indeks prelamanja prve sredine uzet vazduh ciji je isti=1");     System.out.print("\n");     System.out.print("\n");     System.out.print("\n");     System.out.print("Unesi ugao posmatranja(u stepenima):");     System.out.print("\n");         System.out.print("Izaberite indeks prelamanja druge sredine:\n1.Dijamant\n2.Voda\n3.Led\n4.Glicerol\n5.Galijum(III)Fosfid\n");     System.out.print("6.Galijum(III)Arsenid\n7.Silicijum\n8.Brom\n9.Kamena so\n10.Etanol");     System.out.print("\n");     System.out.print("\n");         if(e == '1')     {     b = Math.sin(a *DefineConstants.PI/180)*DefineConstants.V/2.419;     c = Math.asin(b);     d = c *180/DefineConstants.PI;     }     else if (e == '2')     {     b = Math.sin(a *DefineConstants.PI/180)*DefineConstants.V/1.33;     c = Math.asin(b);     d = c *180/DefineConstants.PI;     }     else if (e == '3')     {     b = Math.sin(a *DefineConstants.PI/180)*DefineConstants.V/1.31;     c = Math.asin(b);     d = c *180/DefineConstants.PI;     }     else if (e == '4')     {     b = Math.sin(a *DefineConstants.PI/180)*DefineConstants.V/1.4729;     c = Math.asin(b);     d = c *180/DefineConstants.PI;     }     else if (e == '5')     {     b = Math.sin(a *DefineConstants.PI/180)*DefineConstants.V/3.5;     c = Math.asin(b);     d = c *180/DefineConstants.PI;     }     else if (e == '6')     {     b = Math.sin(a *DefineConstants.PI/180)*DefineConstants.V/3,927;     c = Math.asin(b);     d = c *180/DefineConstants.PI;     }     else if (e == '7')     {     b = Math.sin(a *DefineConstants.PI/180)*DefineConstants.V/4.01;     c = Math.asin(b);     d = c *180/DefineConstants.PI;     }     else if (e == '8')     {     b = Math.sin(a *DefineConstants.PI/180)*DefineConstants.V/1.661;     c = Math.asin(b);     d = c *180/DefineConstants.PI;     }     else if (e == '9')     {     b = Math.sin(a *DefineConstants.PI/180)*DefineConstants.V/1.516;     c = Math.asin(b);     d = c *180/DefineConstants.PI;     }     else if (e == '10') { b = Math.sin(a *DefineConstants.PI/180)*DefineConstants.V/1.516; c = Math.asin(b); d = c *180/DefineConstants.PI; } else {System.out.print("Pogresan karakter.Pokrenuti ponovo program i uneti broj u opsegu [1-10].");     return 0; } System.out.print("Prelomljeni ugao je: " +d+" stepeni"); return 7; } } final class DefineConstants {     public static final double PI = 3.1415926535898;     public static final int V = 1; }
A ovo greske
Citat:Compiling the source code....
$javac GlobalMembersQw.java 2>&1
GlobalMembersQw.java:80: error: ';' expected
b = Math.sin(a *DefineConstants.PI/180)*DefineConstants.V/3,927;
^
GlobalMembersQw.java:109: error: unclosed character literal
else if (e == '10') { b = Math.sin(a *DefineConstants.PI/180)*DefineConstants.V/1.516; c = Math.asin(b); d = c *180/DefineConstants.PI; } else {System.out.print("Pogresan karakter.Pokrenuti ponovo program i uneti broj u opsegu [1-10].");
^
GlobalMembersQw.java:109: error: unclosed character literal
else if (e == '10') { b = Math.sin(a *DefineConstants.PI/180)*DefineConstants.V/1.516; c = Math.asin(b); d = c *180/DefineConstants.PI; } else {System.out.print("Pogresan karakter.Pokrenuti ponovo program i uneti broj u opsegu [1-10].");
^
GlobalMembersQw.java:109: error: not a statement
else if (e == '10') { b = Math.sin(a *DefineConstants.PI/180)*DefineConstants.V/1.516; c = Math.asin(b); d = c *180/DefineConstants.PI; } else {System.out.print("Pogresan karakter.Pokrenuti ponovo program i uneti broj u opsegu [1-10].");
^
GlobalMembersQw.java:109: error: 'else' without 'if'
else if (e == '10') { b = Math.sin(a *DefineConstants.PI/180)*DefineConstants.V/1.516; c = Math.asin(b); d = c *180/DefineConstants.PI; } else {System.out.print("Pogresan karakter.Pokrenuti ponovo program i uneti broj u opsegu [1-10].");
^
5 errors


Resio sam problem, ali sad imam odmah novi, zelim da u pocetku se prikaze jedan message dialog, i kada se klikne na ok, da se meni pokaze forma. Ali kada pritisnem Ok, pojavi se prazna forma. Kako da se povezem na to sto sam pravio preko tog message dialoga
public PrelamanjeForm() {        setTitle("Example");     setBounds(200,100,400,200);     setDefaultCloseOperation(EXIT_ON_CLOSE);             JOptionPane.showMessageDialog(this,"Some text,"Title",JOptionPane.INFORMATION_MESSAGE);     }     private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {                                                  int a = 0;         double c;         double d;         double e;       try{  a = Integer.parseInt(ugaoText.getText());}        catch (Exception f) {             JOptionPane.showMessageDialog(this, "Samo brojevi dozvoljeni", "GRESKA", JOptionPane.ERROR_MESSAGE);         }         if (jComboBox1.getSelectedIndex() == 0) {             c = Math.sin(a * DefineConstants.PI / 180) * DefineConstants.V / 2.419;             d = Math.asin(c);             e = d * 180 / DefineConstants.PI;             RezultatLabel.setText("Rezultat je: " + String.valueOf(d)); . . . .

Ko je trenutno na forumu
 

Ukupno su 515 korisnika na forumu :: 11 registrovanih, 1 sakriven i 503 gosta   ::   [ Administrator ] [ Supermoderator ] [ Moderator ] :: Detaljnije

Najviše korisnika na forumu ikad bilo je 3466 - dana 01 Jun 2021 17:07

Korisnici koji su trenutno na forumu:
Korisnici trenutno na forumu: Bluper, BORUTUS, milenko crazy north, Nikolaa11, repac, Romibrat, sap, slonic_tonic, SR-3m, Vlada1389, wizzardone