This is an old revision of the document!


Laboratorul 01.

Observație

Datele de intrare se vor da fie ca parametri în linia de comandă, fie ca valori fixe ale aplicațiilor!

Problema 1

Să se introducă programul de mai jos (clasa Test) într-un fișier cu numele Prob1.java, folosind mediul integrat NetBeans / Eclipse. 1. Să se compileze și să se ruleze următorul program:

class Test {
	public static void main(String args[]) {
		System.out.println("Test Java");
	}
}

Adăugați atributul public înaintea cuvântului cheie class, recompilați și executați programul. Rezolvați problema apărută!

IMPORTANT!

Clasele care NU au atributul public pot avea un nume diferit de numele fișierului sursă, însă dacă adăugăm atributul public este obligatoriu ca numele clasei și numele fișierului sursă, în care se află clasa, să coincidă.

Problema 2

Să se scrie o clasă Problema2 care conţine două metode (funcţii):

  • metoda print() care primește un argument de tip String pe care-l afișează;
  • metoda main() care apelează funcția print() pentru afișarea unui șir constant.

IMPORTANT!

Metoda print se va apela în main astfel:

Problema2 obiect = new Problema2(); // creare obiect de tip Problema2
obiect.print("Test"); //apelare metoda print

Problema 3

  1. Să se modifice clasa scrisă la exerciţiul anterior prin definirea a două clase, fiecare conţinând câte o metodă:
    • o clasă pentru metoda main();
    • o clasă pentru metoda print().
  2. as

1. \begin{itemize} \item o clasă pentru metoda \textbf{main()}; \item o clasă pentru metoda \textbf{print()}. \end{itemize} \par \noindent Să se verifice dacă ambele clase din fi\c{s}ier pot fi publice. \par \noindent Apelul metodei \textbf{print} se va realiza în acelaşi mod ca la problema 2! \newline \warning{IMPORTANT !} \begin{Warning} Într-un fi\c{s}ier \textbf{\textit{nu}} pot fi definite două \textbf{\textit{clase publice}}. \end{Warning} \par \setlength{\parindent}{7ex} 2. Să se modifice programul anterior prin crearea a două fişiere sursă, fiecare conţinând o clasă cu câte o singură metodă. Incercati să executa\c{t}i ambele clase. \noindent \newline \newline \warning{IMPORTANT !} \begin{Warning} O \textbf{\textit{clasă executabilă}} este o clasă care con\c{t}ine obligatoriu \textbf{\textit{metoda main}}. \end{Warning}

\noindent \chapter{\textbf{Problema 4}} \par \setlength{\parindent}{7ex} Să se scrie un program pentru afi\c{s}area tuturor argumentelor primite în linia de comandă. \begin{myblock}{Observatie} Argumentele se pot transmite astfel: \begin{itemize} \item daca programul se ruleaza din NetBeans / Eclipse se vor urma instructiunile de la începutul laboratorului; \item daca programul se ruleaza din linia de comandă: \setlength{\parindent}{14ex} \par \textbf{\textit{java numeprogram arg1 arg2 arg3}} \end{itemize} \end{myblock}

\noindent \chapter{\textbf{Problema 5}} \par Să se realizeze o clasă care cuprinde o metodă recursivă care calculează puterea întreagă a unui numar întreg \c{s}i o metodă pentru afi\c{s}area rezultatului func\c{t}iei, alături de rezultatul func\c{t}iei statice \textbf{\textit{Math.pow(baza, exp)}} pentru a se putea valida. Clasa va con\c{t}ine un \textbf{main} în care se vor testa cele două metode definite anterior.

\warning{IMPORTANT !} \begin{Warning} \noindent O \textbf{\textit{metodă statică}} a unei clase se apelează prin: \setlength{\parindent}{17ex} \par\color{Blue}\textbf{NumeClasă.numeMetodăStatică(…)} \newline Ex: \texttt{Math.pow(…);} \end{Warning}

\vspace{0.2cm} \noindent \chapter{\textbf{Problema 6}} \par Să se implementeze o clasă cu două metode: \begin{itemize} \item o metodă de tip \textbf{\textit{boolean}} care verifică dacă un număr întreg dat este prim; \item metoda \textbf{\textit{main()}} care verifică metoda anterioară pentru toate numerele naturale mai mici ca 20. \end{itemize}

\noindent \chapter{\textbf{Problema 7}} \par Să se scrie un program pentru verificarea ipotezei lui Goldbach pentru primele \textbf{n} numere pare, prin afi\c{s}area tuturor sumelor de două numere prime prin care poate fi exprimat un număr par. Variabila \textbf{n} poate fi ini\c{t}ializată cu o valoare constantă. \par \textbf{Ipoteza lui Goldbach:} orice nr par poate fi descompus ca sumă de cel pu\c{t}in o pereche de două numere prime. Se consideră $1$ ca fiind număr prim.

\begin{myexampleblock}{Cod sursă Java} \par Pentru afi\c{s}area unei expresii de forma \textbf{\textit{a = b + c}} se va scrie: \begin{lstlisting} System.out.println(a + ” = ” + b + ” + ” + c); \end{lstlisting} unde \textbf{\textit{a}}, \textbf{\textit{b}}, \textbf{\textit{c}} sunt variabile numerice de orice tip (\textbf{\textit{short}}, \textbf{\textit{int}}, \textbf{\textit{long}}, \textbf{\textit{float}}, \textbf{\textit{doube}}). \end{myexampleblock}

\noindent \chapter{\textbf{Problema 8}} \par Să se scrie un program pentru ordonarea unui vector de numere \c{s}i căutarea binară în acest vector, folosind metodele statice \textbf{\textit{sort()}} si \textbf{\textit{binarySearch()}} din clasa \textbf{\textit{Arrays}}. Vectorul va con\c{t}ine numere generate aleator folosind metoda statică \textbf{\textit{random()}} din clasa \textbf{\textit{Math}}, cu rezultat de tip \textbf{\textit{double}}.

poo/laboratoare/01.1513940036.txt.gz · Last modified: 2017/12/22 12:53 by mihai.nan
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0