Documente online.
Zona de administrare documente. Fisierele tale
Am uitat parola x Creaza cont nou
 HomeExploreaza
upload
Upload




PROBLEME SEMINAR TEHNICI AVANSATE DE PROGRAMARE

Informatica


PROBLEME SEMINAR

TEHNICI AVANSATE DE PROGRAMARE

/* fisirul Salut.java */

import java.util.*;



public class Salut
      strMesaj+=" "+strUtilizator+"!";
      System.out.println(strMesaj);
   }   
}

Scopul acestei aplicatii este acela de a afisa mesajul:

Buna ziua nume!

Numele utilizatorului se transmite in linia de comanda (la lans 414b113e area in executie a programului). Daca numele lipseste, se va considera implicit numele Ion.

Scrierea acestui program se poate realiza folosind orice editor de text, spre exemplu Notepad din Windows. Din considerente de productivitate se recomanda insa utilizarea unui mediu de dezvoltare, care permite pe langa corectii automate de cod si compilarea si executarea automata a aplicatiei.

Activitate propusa pentru laborator(acasa):

Compilati si rulati programul urmator (fisierul Tipuri.java).

/**
* Clasa Tipuri se foloseste pentru a demonstra
* tipurile primitive din Java
*
* @version 1.0
* @author Elena Dragan
*/
public class Tipuri
}

Activitate propusa pentru laborator(acasa):

Compilati si rulati programul urmator (fisierul Operatii.java).

import java.io.*;
    /**
    * Clasa Operatii se foloseste pentru a demonstra
    * operatorii si operatiile de I/O la consola
    *
    * @version 1.0
    * @author Elena Dragan
    */
    public class Operatii
}

Activitate propusa pentru laborator(acasa):

Compilati si rulati programul urmator (fisierul InCond.java).

/**
* Clasa InCond - Instructiuni conditionale
*
* @version 1.0
* @author Elena Dragan
*/
public class InCond

min = (nota1<nota2) ? nota1 : nota2;
System.out.println("Nota minima: "+min);

switch (nota1)

System.out.println("Calificativul pentru nota1 este "+mesaj);
}

}

Activitate propusa pentru laborator(acasa):

Compilati si rulati programul urmator (fisierul InCiclic.java).

/**
* InCiclic - test Instructiuni ciclice
*
* @version 1.0
* @author Elena Dragan
*/
public class InCiclic

// echivalent
//while (i<=5)
// System.out.println("i = "+i++);

System.out.println("Afisarea numerelor impare <5 prin do .. while:");
i=1; // secventa de initializare
do while (i++<=5);
}

}

Activitate propusa pentru laborator(acasa):

Compilati si rulati programul urmator (fisierul Factorial.java).

/**
* Factorial - Subrograme recursive. Calculul factorial(n) = 1*2*3*..*n
* Formula este:
* factorial(0)=1
* factorial(k) = k*factorial(k-1)
*
* @version 1.0
* @author Elena Dragan
*/
public class Factorial
else
return 1;
}

public static void main(String args[])
}

Activitate propusa pentru laborator(acasa):

Compilati si rulati programul urmator (fisierul Tablouri.java).

/**
* Clasa Tablouri - inmultirea de matrici bidimensionale DIM*DIM
*
*/
public class Tablouri
}

public static void genereazaElMat( int m[][] )

public static int[][] inmultesteMat( int a[][], int b[][])
else
dim = a[0].length;


for ( i=0; i<a.length; i++)
for ( j=0 ; j<b[i].length; j++)
return c;
}

public static void main(String args[])
}

........

Pentru exemplificarea conceptului de clasa se considera modelul unei entitati "Persoana":

 /**
 * Clasa Persoana descrie datele si comportamentul unei persoane
 */

public class Persoana

   /** Constructor al clasei Persoana - doar numele
   * @param numePers numele persoanei
   * @param prenumePers prenumele persoanei
   */
   public Persoana( String numePers, String prenumePers )


   /** Metoda afiseazaInformatii - afiseaza pe consola informatiile despre persoana
   */
   void afiseazaInformatii()

}

......

/**
 * Clasa Persoana descrie datele si comportamentul unei persoane
 */

public class Persoana

   /** Metoda getVarsta - permite aflarea varstei
   * @return varsta persoanei in ani impliniti
   */
   public int getVarsta()

   /** Metoda getInaltimea - permite aflarea inaltimii
   * @return inaltimea persoanei in cm
   */
   public double getInaltimea()

   /** Metoda getSex - permite aflarea sexului
   * @return sexul persoanei sub forma de sir de caractere
   */
   public String getSex()
      return s;
   }

   /** Metoda setNume - permite schimbarea numelui dupa casatorie
   * se aplica doar pentru sex='F'
   * @param numeNou numele dupa schimbare
   */
   public void setNume(String numeNou)

   /** Metoda setVarsta - permite schimbarea varstei
   * @param varstaNoua varsta noua
   */
   public void setVarsta(int varstaNoua)

   /** Metoda setInaltimea - permite schimbarea inaltimii persoanei
   * @param inaltimeNoua inaltimea noua
   */
   public void setInaltimea(double inaltimeaNoua)

   /** Metoda afiseazaInformatii - afiseaza pe consola informatiile despre persoana
   */
   void afiseazaInformatii()

}

Activitate propusa pentru laborator(acasa):

Compilati si rulati programul urmator (fisierul Persoana.java).

public class Persoana

Activitate propusa pentru laborator(acasa):

Compilati si rulati programul urmator (fisierul Student.java).

/**
* Clasa Student - derivata din clasa Persoana
*
*/
public class Student extends Persoana

 public Student(String numePers, String prenumePers)

 public void afiseazaInformatii()

 public static void main(String args[])
}

Activitate propusa pentru laborator(acasa):

Compilati si rulati programul urmator (fisierul Figuri.java).

/**
 * Clasa Figura modeleaza conceptul de figura geometrica
 */

abstract class Figura

   public Figura(double x0, double y0)

   public abstract double aria();   // metoda abstracta
   public abstract double perimetru();   // metoda abstracta

   public String toString()

   public void muta(double x0, double y0 )
}


/**
 * Clasa Dreptunghi modeleaza un dreptunghi
 */

class Dreptunghi extends Figura

   public Dreptunghi(double lung, double lat)

   public double aria()

   public double perimetru()

   public String toString()
}

/**
 * Clasa Patrat modeleaza un dreptunghi cu laturile egale
 */

class Patrat extends Dreptunghi

   public Patrat(double latura)

   public String toString()
}

/**
 * Clasa Cerc modeleaza un cerc
 */

class Cerc extends Figura

   public Cerc(double r)

   public double aria()

   public double perimetru()

   public String toString()
}

/**
 * Clasa Figuri exemplifica utilizarea ierarhiei de obiecte grafice
 */

public class Figuri
}

Activitate propusa pentru laborator(acasa):

Compilati si rulati programul urmator (fisierul Interfete.java).

import java.io.*;

interface Intreruptibil

abstract class Aparat

   public void porneste()

   public void opreste()

   protected String aflaStare()

   abstract public String stare();
}

abstract class Electronic extends Aparat
}

abstract class Electric extends Aparat
}

class Fax extends Electronic

   public String stare()
}

class Calculator extends Electronic

   public String stare()
}

class Monitor extends Electronic implements Intreruptibil

   // metode din interfata Intreruptibil
   public String opresteSeara()

   public String pornesteDimineata()

   public String stare()
}

class Radio extends Electronic implements Intreruptibil

   // metode din interfata Intreruptibil
   public String opresteSeara()

   public String pornesteDimineata()

   public String stare()
}

class Bec extends Electric implements Intreruptibil

   // metode din interfata Intreruptibil
   public String opresteSeara()

   public String pornesteDimineata()

   public String stare()
}

class Radiator extends Electric

   public String stare()
}


public class Interfete
}

Activitate propusa pentru laborator(acasa):

Compilati si rulati programul urmator (fisierul Exceptii.java).

import java.io.*;

public class Exceptii

   public static int citNumar() catch (IOException e) catch(NumberFormatException e)
      } while (err);

      return nr;
   }

   private void citesteNumere() throws IndexOutOfBoundsException
   }

   public void citeste()
      catch(IndexOutOfBoundsException e)
   }

   public void afiseaza() throws IndexOutOfBoundsException
   }

   public static void main(String args[])
      catch(IndexOutOfBoundsException e)
   }
}

Activitate propusa pentru laborator(acasa):

Compilati si rulati programul urmator (fisierul Citire.java).

import java.io.*;
import java.net.*;

/** clasa Citire - extrage referintele dintr-o a unui server Web
*
*/

class Citire
      flux_intrare.close();
   }
}

Activitate propusa pentru laborator(acasa):

Compilati si rulati programul urmator (fisierul Copy.java).
El are ca si scop crearea unei copii a unui fisier binar de intrare.

import java.io.*;
/** Copy - realizeaza o copie a fisierului de intrare
* cu numele in.jpg si o scrie in fisierul out.jpg
*/
public class Copy
}

Activitate propusa pentru laborator(acasa):

Compilati si rulati programul urmator (fisierul Stiva.java).

import java.util.*;

/**
* Stiva - clasa pentru exemplificarea implementarii unei stive
* de numere intregi
* LIFO (last in - first out (primul intrat, ultimul extras))
*
* @version 1.0 03 Apr 2003
* @author Elena Dragan
*/
class Stiva extends LinkedList

   public void adauga(int nr)

   public void afiseaza()

   public Integer extrage()

   public static void main(String args[])
}

Activitate propusa pentru laborator(acasa):

Compilati si rulati programul urmator (fisierul MultimeAnimale.java).

import java.util.*;

/**
* MultimeAnimale - clasa pentru exemplificarea implementarii unei
* multimi de animale
*
* @version 1.0 03 Apr 2003
* @author Elena Dragan
*/
class MultimeAnimale extends HashSet

   public void adauga(String animal)

   public void afiseaza()

   public void afiseazaOrdonat()

   public static void main(String args[])
}

Activitate propusa pentru laborator(acasa):

Compilati si rulati programul urmator (fisierul MultimeAnimale1.java).

import java.util.*;

/**
* MultimeAnimale1 - clasa pentru exemplificarea implementarii unei
* multimi de animale parcursa printr-un iterator
*
* @version 1.0 03 Apr 2003
* @author Elena Dragan
*/
class MultimeAnimale1 extends HashSet
      System.out.println(" }");
   }

   ...
}

Activitate propusa pentru laborator(acasa):

Compilati si rulati programul urmator (fisierul Dictionar.java).

import java.util.*;
import java.io.*;

/**
* Dictionar - clasa pentru exemplificarea implementarii unei
* multimi de tip map care asociaza cuvinte de explicatiile lor
*
* @version 1.0 03 Apr 2003
* @author Elena Dragan
*/
public class Dictionar extends TreeMap

   public void adaugaCuvant(String cuvant, String explicatie)

   public String cautaCuvant(String cuvant)

   public void afisDictionar()


   public static void main(String args[]) throws Exception
    break;
    case 'c': case 'C':
       System.out.println("Cuvant cautat:");
       linie = fluxIn.readLine();
       if( linie.length()>1)
    break;
    case 'l': case 'L':
       System.out.println("Afiseaza:");
       dict.afisDictionar();
    break;
         }
      } while(raspuns!='e' && raspuns!='E');
   }
}

Activitate propusa pentru laborator(acasa):

Studiati conventia folosita la scrierea unui program demonstrativ de la firma Java (fisierul CodeExemple.java).

*
* #)Blah.java 1.82 99/03/18
*
* Copyright (c) 1994-1999 Sun Microsystems, Inc.
* 901 San Antonio Road, Palo Alto, California, 94303, U.S.A.
* All rights reserved.
*
* This software is the confidential and proprietary information of Sun
* Microsystems, Inc. ("Confidential Information"). You shall not
* disclose such Confidential Information and shall use it only in
* accordance with the terms of the license agreement you entered into
* with Sun.
*/

package java.blah;

import java.blah.blahdy.BlahBlah;

/**
* Class description goes here.
*
* @version 1.82 18 Mar 1999
* @author Firstname Lastname
*/
public class Blah extends SomeClass

   /**
   * ...method doSomething documentation comment...
   */
   public void doSomething()

   /**
   * ...method doSomethingElse documentation comment...
   * @param someParam description
   */
   public void doSomethingElse(Object someParam)
}


Document Info


Accesari: 2544
Apreciat: hand-up

Comenteaza documentul:

Nu esti inregistrat
Trebuie sa fii utilizator inregistrat pentru a putea comenta


Creaza cont nou

A fost util?

Daca documentul a fost util si crezi ca merita
sa adaugi un link catre el la tine in site


in pagina web a site-ului tau.




eCoduri.com - coduri postale, contabile, CAEN sau bancare

Politica de confidentialitate | Termenii si conditii de utilizare




Copyright © Contact (SCRIGROUP Int. 2024 )