import java.awt.*; import java.applet.*; public class lab12 extends Applet { int i,j,x; String nr_zi; int[] nr=new int[10]; // void inputt(String sir,int[] nr); public void paint(Graphics g) { String numele = getStringParameter("nume"); int d1 = getIntParameter("d1"); int m1 = getIntParameter("m1"); int y1 = getIntParameter("y1"); int d2 = getIntParameter("d2"); int m2 = getIntParameter("m2"); int y2 = getIntParameter("y2"); int[] p=new int[3]; p[0]=23; p[1]=28; p[2]=33; int[] q=new int[5]; int i,n,nz,se,sen; double nr,sr; nz=nrzile(d1,m1,y1); nz=nrzile(d2,m2,y2)-nz-d2+1; Font font0=g.getFont(); Font font0B=new Font(font0.getName(),font0.BOLD,font0.getSize()); Font font1=new Font("Helvetica", Font.BOLD, 24); g.drawString("Bioritm pentru:", 100, 20) ; g.setColor(Color.green); g.setFont(font1); g.drawString(numele, 250, 20) ; g.setFont(font0); g.setColor(Color.black); g.drawString("Data nasterii: "+String.valueOf(d1)+" "+String.valueOf(m1)+" "+String.valueOf(y1),50,40); g.drawString("Data de referinta: "+String.valueOf(d2)+" "+String.valueOf(m2)+" "+String.valueOf(y2),230,40); g.setColor(Color.blue); g.drawLine(0,50,getSize().width,50); /* public void init() { super.init(); Color foreground = getColorParameter("foreground"); Color background = getColorParameter("background"); if (foreground != null) this.setForeground(foreground); if (background != null) this.setBackground(background); } // Read the specified parameter. Interpret it as a hexadecimal // number of the form RRGGBB and convert it to a color. String getStringParameter(String name) { String nume = this.getParameter(name); return nume; // try { return new Color(Integer.parseInt(value, 16)); } // catch (Exception e) { return null; }etStringParamete } */ for (i=0;i<3;i++) { g.setColor(new Color(127*(i%3),127*((i+1)%3),127*((i+2)%3))); g.drawLine(10,405+18*i,100,405+18*i); if (i==0) g.drawString("fizic ", 102,410+18*i); else if(i==1) g.drawString("psihic ",102,410+18*i); else g.drawString("intelect ",102,410+18*i); q[i]=nz%p[i]; nr=2*Math.PI*q[i]/p[i]; sr=Math.sin(nr); se=(int)Math.round((sr+1)*80); for(n=nz;n<=nz+31;n++) { q[i]=n%p[i]; nr=2*Math.PI*q[i]/p[i]; sr=Math.sin(nr); sen=(int)Math.round((sr+1)*160); g.drawLine(24*(n-nz-1)-10,480-(100+se),24*(n-nz)-10,480-(100+sen)); se=sen; // delay(10); } } g.setColor(Color.white); for (i=0;i<31;i++) { // itoa(i,nr_zi,10); nr_zi=String.valueOf(i+1); g.drawLine(20*i+2,50,20*i+2,390); if (i!=(d2-1)) if (i>8) g.drawString(nr_zi,20*i+5,55); else g.drawString(nr_zi,20*i+9,55); else { // g.setFont(font0B); g.setColor(Color.blue); if (i>8) g.drawString(nr_zi,20*i+5,55); else g.drawString(nr_zi,20*i+9,55); // g.setFont(font0); g.setColor(Color.white); } // delay(10); } g.drawLine(this.getSize().width,50,this.getSize().width,390); g.setColor(Color.black); // line(0,220,getmaxx(),220); // rectangle(0,50,getmaxx(),390); // getch(); // closegraph(); } /*void inputt(char *sir,int *nr) { printf("%s",sir); scanf("%d",nr); }*/ String getStringParameter(String name) { String nume = this.getParameter(name); return nume; } int getIntParameter(String intreg) { String valoare = this.getParameter(intreg); try { return Integer.parseInt(valoare) ; } catch (Exception e) { return 0; } } private int nrzile(int d,int m,int y) { int r; int[] nr = new int[12]; nr[0]=0; nr[1]=31; nr[2]=59; nr[3]=90; nr[4]=120; nr[5]=151;nr[6]=181; nr[7]=212; nr[8]=243; nr[9]=273; nr[10]=304; nr[11]=334; r=nr[m-1]; r=r+365*y+y/4+d+1; r=r-y/100+y/400; if (!((y%4!=0)||(y%400==0)||(y%100==0)||(m<2))) r--; return r; } }