Sunteți pe pagina 1din 26

Proiect cofinanţat din FSE prin Program Operațional Capital Uman 2014 - 2020

Axa Prioritară 6 - Educație și competențe


Acțiune: OS6.7, OS6.9, OS6.10
Titlu proiect: Azi Student, Mâine Antreprenor!
Acronim proiect: ASMA
Cod proiect: POCU/379/6/21/123894
Beneficiar: Universitatea Babeș-Bolyai din Cluj-Napoca

Modul 8 -
Fișă de lucru
Probleme destinate asimilării aspectelor teoretice legate de lim-
baj: Comentarii, Variabile, Constante, Conversii și Instrucțiuni

Exerciții destinate acomodării cu: Elemente de limbaj, Comentarii,


Variabile, Conversii Operatori, Constante

Exercițiu 1. Creați o pag php în care să se exemplifice modul de utilizare


a secvențelor escape. (în biblioteca cu exerciții rezolvate PB0_exem-
plu1.php)

<html>
<head>
<title>Exemplu pentru toate tipurile de variabile PHP</title></head>
<body>
<pre>
<?php echo "Hello\n world \t!"; ?>
</pre>
<?php echo "El a spus: \"Ai nevoie de chestiile astea! \" pentru studenti";
?>
</body>
</html>

Obs: tagurile <pre> …</pre> sunt obligatorii pt ca caracterul escape pt


new line să funcționeze.

I. Variabile și Constante

Exercițiu 2: Creați o pag php care să ilustreze modul de utilizare a varia-


bilelor și comentariilor în limbajul PHP (în biblioteca cu exerciții rezolvate
PB1_Comentariu_Variabile.php)

<html>
<head><title>Exemplu variabile PHP </title></head> <body>
<?php
$a=5;
$aduna=$a+5;

Pagina 2
print "Rezultatul adunarii este: $aduna"; /* se afişează pe ecran textul
Rezultatul adunarii este:urmat de valoare variabilei $aduna adică 10 */
?>
<h2> Alte exemple</h2>
<?php
$nume = "Unchiul Vanea" ;
$nascut = 1961 ;
$tara = "Romania" ;
echo "Buna ziua, numele meu este: <b>" ;
echo $nume ;
echo "</b>" ;
echo "<p/>" ;
echo "Sunt un personaj de roman: <br/>";
echo "<em>";
echo $tara;
echo "</em>";
echo "<p/>";
echo "Eu am<b>";
echo (2021 - $nascut) ;
echo "</b> de ani.";
?>
</body> </html>

Exercițiul 3. Creați o pag php care să ilustreze diferenta între casting și


settype() este dată de faptul că prin casting se obține o copie a valorii va-
riabilei lasând variabila inițială neschimbată.
(în biblioteca cu exerciții rezolvate Pb2_Conversie.php)

<html><head><title> Schimbarea tipului variabilelor prin casting</ti-


tle></head><body>
<?php
$test=9.8; //declarare cu atribuire
$casting=(double) $test;
echo gettype($casting);//double
echo " ";
echo "este $casting <br>";//afiseaza:9.8
$casting=(string) $test;
echo gettype($casting);//string

Pagina 3
echo " ";
echo "este $casting <br>";//afiseaza:9.8
$casting=(integer) $test;
echo gettype($casting);//integer
echo " ";
echo "este $casting <br>";//afiseaza:9
$casting=(double) $test;
echo gettype($casting);//double
echo " ";
echo "este $casting <br>";//afiseaza:9
$casting=(boolean) $test;
echo gettype($casting);//boolean
echo " ";
echo "este $casting <br>";//1
echo "<hr>";
echo "Tipul variabilei originale este:";
echo gettype($test);//double
echo " ";
echo "Valoarea variabilei initiale este: $test";//neschimbata 9.8
?>
</body>
</html>

Obs: Tipul de date al variabilei și valoarea $test a rămas neschimbat pe tot


parcursul exemplului.

Exemplu 4. Concatenarea şirurilor se face cu operatorul . (punct) (în bi-


blioteca cu exerciții rezolvate PB3_Conversiepunct.php)

<html>
<body>
<?php
$p = "POP";
$l = "VIOREL";
$spatiu = ( $p . " " ) ; // concatenare!
$nume = ( $spatiu . $l ) ; // concatenatre!

Pagina 4
echo "<h1>$nume</h1>";
?>
</body>
</html>

Exemplu 5. Creare pag php prin care se exemplifică operatorii aritmetici.


(în biblioteca cu exerciții rezolvate PB4_Operatori.php)

<?php $an = date("Y") ;?>


An urmator:
<?php echo ($an+1); ?>
<br/>
<?php $an = 2021;
echo "An: <b>$an</b> <br/>" ;
$an = ( $an + 1 ) ;
echo "An: <b>$an</b>";?>
<br/>
<?php /* Conversie EUR la DKK */
$rate = 7.5 ;
$euro = 100 ;

echo "Pentru <b>$euro</b> EUR, se primeste";


$moneda = ( $euro * $rate ) ; // înmulţire!
echo "<b>$moneda</b> DKK." ; ?>
<br/>
<?php /* Conversie DKK la EUR */
$rate = 7.5 ;
$moneda = 100 ;

echo "Pentru <b>$moneda</b> EUR, se primeste";


$euro = ( $moneda/$rate ) ; // împărţire!
echo "<b>$euro</b> DKK."; ?>
<br/>
<?php /* Conversie DKK la EUR */
$rate = 7.5 ;
$moneda = 100 ;

echo "Pentru <b>$moneda</b> EUR, se primeste" ;

Pagina 5
$euro = ( $moneda/$rate ) ; // împărţire!
$rotunjire=round( $euro ) ;
echo "<b>$rotunjire</b> DKK."; ?>
<br/>
<?php $x = 2 ;
$y = 5 ;
$rezultat = ((1 + (2 - $x)) * ($y / 2)) ;
echo "Rezultatul este: <b>$rezultat</b>";
?>
<br/>
<?php $x = 7 ;
echo " 'x' este: <b>$x</b>";
echo "<p/>";
$x++ ;
echo "'x' este: <b>$x</b>";
?>
<br/>
<?php
$x = 1 ;
$y = 2 ;
$rezultat = ( $x > $y ) ;
echo "Rezultatul este: <b>$rezultat</b>";
?>

Exemplu 6. Creare pag php prin care se exemplifică comportamentul va-


riabilelor în php. (în biblioteca cu exerciții rezolvate PB5_Varia-
bile2.php)

<html>
<head><title>Exemplu variabile PHP </title></head> <body>
<h2> Numele de variabile sunt case senzitive</h2>
<?php
$nume = "Aici se memorează un text";
$Nume = "Aici se memorează un alt text";
echo $nume ;
echo "<p/>";

Pagina 6
echo $Nume;
?>
</body> </html>

Exemplu 7. Creare pag php prin care se exemplifică comportamentul va-


riabilelor globale în php. (în biblioteca cu exerciții rezolvate PB10_Vari-
abileglobale.php)
<html>
<head><title>Exemplu variabile PHP </title></head> <body>
<h2> Variabile globale</h2>
<?php
$ipaddress = $_SERVER['REMOTE_ADDR'];
Echo "IP Address este " . $ipaddress;
$ipaddress = getenv("REMOTE_ADDR") ;
Echo "Your IP Address este: " . $ipaddress;
echo "<br/>";
$agent=$_SERVER['HTTP_USER_AGENT'];
Echo "Browser este: " . $agent;
echo "<br/>";
$numeserver=$_SERVER['SERVER_NAME'];
Echo "Nume server este: " . $numeserver;
echo "<br/>";
$scriptname=$_SERVER['SCRIPT_NAME'];
Echo "Nume script este: " . $scriptname;
echo "<br/>";
echo "<br/>";
echo "<br/>";
echo "<b>Afisare variabile globale pe parte de Server</b><br/>";

print_r($_SERVER);
?>

Pagina 7
</body> </html>

II. Instrucțiuni
Exemplu1. Se dau două valori întregi atribuite prin program, să se determine
minimul dintre ele.
(în biblioteca cu exerciții rezolvate PB1_Instructiuneaif.php)
<html><head>
<title> Determinarea minimului dintre doua valori </title>
</head>
<body>
<?php
//Determinarea minimului dintre doua valori
$a=10;
$b=7;
if ($a<$b)
{echo "Minimul este:$a";}
else
{echo "Minimul este:$b"; }
?>
</body> </html>

Exemplu 2. Se dau două valori întregi de la tastatură, să se determine mini-


mul dintre ele.
(în biblioteca cu exerciții rezolvate PB2_Instructiuneaif.php)
<html>
<head>
<title> Determinarea minimului dintre doua valori </title>
</head>
<body>
<form action="PB2_Instructiuneaif.php" method="POST">
A: <input type="text" name="a" />

Pagina 8
B: <input type="text" name="b"/>
<input type="submit" name="submit" />
</form>
</body></html>
<?php
//Determinarea minimului dintre doua valori
if (isset($_POST['submit'])){
$a=trim($_POST['a']);
$b=trim($_POST['b']);
if ($a<$b)
{echo "Minimul este:$a";}
else
{echo "Minimul este:$b"; }}
?>

Exemplu 3. Se dau două valori întregi de la tastatură, să se rezolve ec de


gradul 1.
(în biblioteca cu exerciții rezolvate PB3_Instructiuneaif_ecgr1.php )

Pagina 9
<html>
<head>
<title> Determinarea minimului dintre doua valori </title>
</head>
<body>
<form action="PB3_Instructiuneaif_ecgr1.php" method="POST">
A: <input type="text" name="a" />
B: <input type="text" name="b"/>
<input type="submit" name="submit" />
</form>
</body></html>

<?php
//Determinarea minimului dintre doua valori
if (isset($_POST['submit'])){
$a=trim($_POST['a']);
$b=trim($_POST['b']);
IF ($a!=0)
{ $rezultat = -$b/$a;
echo "$rezultat";
}
elseif ($b==0) echo "ecuatia are o infinitate de solutii";
else echo "ecuatia nu are solutii";
}
?>

Exemplu 4. Se dă un nr întreg de la tastatură, să se afișeze ziua din săptă-


mână corespunzătoare numărului.
(în biblioteca cu exerciții rezolvate PB4_Instructiuneaswitch.php)

<html> <head>

Pagina 10
<title> Instructiunea switch...case. </title>
</head><body>
<form action="PB4_Instructiuneaswitch.php" method="POST">
Nr: <input type="text" name="nr" />
<input type="submit" name="submit" />
</form>
</body></html>
<?php
if (isset($_POST['submit'])){
switch(trim($_POST['nr'])){
case 1: echo "Luni";
break;
case 2: echo "Marti";
break;
case 3: echo "Miercuri";
break;
case 4: echo "Joi";
break;
case 5: echo "Vineri";
break;
case 6: echo "Sambata";
break;
case 7: echo "Duminica";
break;
default: echo "Nu este numar echivalent cu 0 zi din saptamana"; }} ?>
</body>
</html>

Exemplu 5: Să se scrie un program care afișează valoare variabilei n!. Va-


loarea variabilei este atribuită în program.
(în biblioteca cu exerciții rezolvate PB5_Instructiuneawhile.php)
<html>
<head>
<title>Calculul lui n! </title>
</head>
<body>
<form action="PB5_Instructiuneawhile.php" method="POST">
A: <input type="text" name="a" />
<input type="submit" name="submit" />

Pagina 11
</form>
<?php
//Determinarea factorialului
if (isset($_POST['submit'])){
$n=trim($_POST['a']);

//Calculul factorialul lui n


$i=1;
$fact=1;
while ($i<=$n){
$fact=$fact*$i;
$i++;
}
echo "Rezultatul lui n! este: $fact";
}?></body></html>

Exemplu 6: Să se scrie un program care afișează valoare variabilei n!. Va-


loarea variabilei este atribuită în program folosind instrucțiunea do..while

(în biblioteca cu exerciții rezolvate PB6_Instructiuneadowhile.php)


<html>
<head>
<title>Calculul lui n! </title>
</head>
<body>

<form action="PB6_Instructiuneadowhile.php" method="POST">


A: <input type="text" name="a" />

<input type="submit" name="submit" />


</form>

<?php
//Determinarea factorialului
if (isset($_POST['submit'])){
$n=trim($_POST['a']);

Pagina 12
//Calculul factorialul lui n
$i=1;
$fact=1;
do{
$fact=$fact*$i;
$i++;
}while ($i<=$n);
echo "Rezultatul lui n! este: $fact";
}?></body></html>

Exemplu 7: Să se genereze din cod php un tabel html.

(în biblioteca cu exerciții rezolvate PB7_Instructiuneafor.php)


<html>
<head>
<title> Instructiunea repetitive imbricate</title>
</head>
<body>
<form action="PB7_Instructiuneafor.php" method="POST">
A: <input type="text" name="a" />

<input type="submit" name="submit" />


</form>
<?php
if (isset($_POST['submit'])){
$n=trim($_POST['a']);
echo "<table border=\"1\">";
for($i=1; $i<=$n; $i++){
echo "<tr> ";
for($j=1; $j<=$n; $j++){
echo "<td>";
echo ($i*$j);
echo "</td> ";
}
echo "</tr> ";
}
echo "</table>";
}?></body></html>

Pagina 13
III. Date de intrare -Formulare
Exercițiu 1:Creați 2 pag php care trasmit cu GET informația preluată
printr-un formular și o afișează în browser. (în biblioteca cu exerciții rezol-
vate PB4_1formget.php )

formget.php

<html>
<head>
<title> Formular cu GET</title></head><body>

<form action="PB4_2exget.php" method="get">


Nume: <input type="text" name="nume" />
Varsta: <input type="text" name="varsta"/>
<input type="submit" />
</form>
</body></html>

Pagina de pe server care primește datele de la formular (în biblioteca cu


exerciții rezolvate PB4_2exget.php )
<?php
echo "Bun venit,". $_GET["nume"] ."<br/>";
echo "Varsta dvs,". $_GET["varsta"] ."!";?>

Exemplu 2 Creați un formular simplu cu butoane radio și adăugați o parte


din numele popular al universitatilor din Cluj-Napoca ca valoare a butoane-
lor radio. Obțineți valoarea selectată a unui buton radio în PHP. (în biblio-
teca cu exerciții rezolvate PB5_FormPOST.php)
Folosiți $ _POST [] pentru a obține valoarea butonului radio selectat. Dacă
valoarea nu este aleasă, afișăm un mesaj către utilizator pentru a alege
valoarea din grupul de butoane radio.

<!doctype html>
<html>
<head>
<meta charset="utf-8">

Pagina 14
<title>Exemplu de Radio Buttons in PHP</title>
</style>
</head>
<body>
<div class="container my-5">
<form action="" method="post" class="mb-3">
<label>
<b> Alegeti una din Universitatile de mai jos:</b>

</label>
<br/>
<label>
<input type="radio" name="radio" value="UBB">UBB
<span class="select"></span>
</label>
<br/>
<label>
<input type="radio" name="radio" value="UTCN">UTCN
<span class="select"></span>
</label>
<br/>
<label>
<input type="radio" name="radio" value="USAMV">USAMV
<span class="select"></span>
</label>
<br/>
<input type="submit" name="submit" value="Valori">
</form>
<?php
if(isset($_POST['submit'])){
if(!empty($_POST['radio'])) {

Pagina 15
echo ' ' . $_POST['radio'];
} else {
echo 'Alegeti valoare.';
}
}
?>
</div></body></html>

Exemplu 3. Să se creeze un script php în care:


Un utilizator face clic pe meniul drop-down selectat și alege una dintre op-
țiuni în funcție de cerință. De asemenea, putem utiliza mai multe etichete
cu eticheta select, care permite utilizatorilor să selecteze mai multe valori
din lista derulantă.Se utilizează $ _POST pentru a obține valoarea opțiunii
de selectare dacă valoarea este selectată, aceasta va fi afișată utilizatorului
altcineva vom arunca mesajul de eroare. (în biblioteca cu exerciții re-
zolvate PB6_FormPOST.php)
Să se creeze codul sursa atât pentru selecție unică cât și pentru selecție
multiplă

<!doctype html>
<html lang="ro">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1,
shrink-to-fit=no">
<title>Selectare multiplă în PHP</title>
</head>
<body>
<div class="container my-5">
<form action="" method="post" class="mb-3">

Pagina 16
<p><b>Alege una/mai multe din opțiunile următoare</b></p>
<p>
<select name="Fructe[]" multiple>
<option value="Mar">Mar</option>
<option value="Banana">Banana</option>
<option value="Ananas">Ananas</option>
<option value="Zemeura">Zmeura</option>
<option value="Capsuni">Capsuni</option>
</select>
</p>
<p>
<input type="submit" name="submit" value="Alege opțiuni">
</p>
</form>
<p>
<?php
echo "Rezultat selectie </br>";
if(isset($_POST['submit'])){
if(!empty($_POST['Fructe'])) {
foreach($_POST['Fructe'] as $selected){
echo ' ' . $selected;
}
} else {
echo 'Sa se selecteze o valuare.';
}
}
?>
</p></div></body></html>

Exemplu 4. Să se creeze 2 scripturi php în care unul conține un formular


ce transmite datele colectate la o pagina php care le afișează.

Pagina 17
Pagina care colectează date (în biblioteca cu exerciții rezolvate
PB10_Form.php)
<html><head><title>un formular cu select</title></head>
<body>
<form action="PB10_FormRaspuns.php" method="POST">
<p><strong>Name:</strong><br>
<input type="text" name="user"></p>
<p> <strong>Adresa:</strong><br>
<textarea name="adresa" rows="5" cols="40"></textarea></p>
<p><strong>Selectati un produs:</strong></p>
<select name="produs[]" multiple>
<option value="casetofon">Casetofon</option>
<option value="CD">CD</option>
<option value="video">Video</option>
</select>
<p><input type="submit" value="send"></p>
</form></body></html>

Pagina care afișează datele colectate de la utilizator (în biblioteca cu


exerciții rezolvate PB10_FormRaspuns.php)
<html>
<head>
<title>un formular cu select</title>
</head>
<body>
<?php
echo "<p>Bine ati venit<b>$_POST[user]</b></p>";
echo "<p>Adresa introdusa este:<br><b>$_POST[adresa]<b></p>";
echo "<p>Produsele alese:<br>";
if(!empty($_POST['produs'])) //testam existenta variabilei
$_POST[produs]

Pagina 18
{
echo "<ul>";
foreach ($_POST['produs'] as $value){
echo "<li>$value";}
echo "</ul>";
}?>
</body>
</html>

IV. Memorare de date --SESIUNI


Exemplu 1. Să se creeze 3 pagini php care să exemplifice modul 2 de
utilizare a sesiunilor în php.

(în biblioteca cu exerciții rezolvate PB8_sesiuni/sesiune1.php)


<?php
session_start();?>
<html>
<head><title>Exemplu de sesiune</title></head>
<?php
$_SESSION['Nume']="Ionescu";
$_SESSION['Prenume']="Laura";
?>
<a href="sesiune2.php">pagina spre care se trimit variabilele de sesi-
une</a>
</html>

(în biblioteca cu exerciții rezolvate PB8_sesiuni/sesiune2.php)


<html>
<head><title>Exemplu de sesiune</title></head>
<body>
<?php

Pagina 19
session_start();
$_SESSION['Nume2']="Pop";
$_SESSION['Prenume2']="Ioan";
$_SESSION['Varsta']=39;
?>
<a href="sesiune3.php">pagina spre care se trimit variabilele de sesi-
une</a>
</body>
</html>

(în biblioteca cu exerciții rezolvate PB8_sesiuni/sesiune3.php)


<html>
<head><title>Exemplu de sesiune</title></head>
<body>
<?php
session_start();
echo $_SESSION['Nume']." ";
echo $_SESSION['Prenume']."<br />";
echo $_SESSION['Nume2'].' ';
echo $_SESSION['Prenume2']." ";
echo $_SESSION['Varsta'];
unset($_SESSION['Nume']);
unset($_SESSION['Prenume']);
unset($_SESSION['Nume2']);
unset($_SESSION['Prenume2']);
unset($_SESSION['Varsta']);
session_destroy();
?>
</body>
</html>

Pagina 20
Exemplu 2.Să se creze un formular care să permită introducerea elevilor
într-un table aflat sub formular fără a utilize baze de date. (în biblioteca
cu exerciții rezolvate PB7_Sesiune_sgpag.php)

<?php
session_start();
if (isset($_POST['Inregistrare'])){
$_SESSION['nume'][]=$_POST['nume'];
$_SESSION['prenume'][]=$_POST['prenume'];
$_SESSION['nota1'][]=$_POST['nota1'];
$_SESSION['nota2'][]=$_POST['nota2'];
}
?>
<html>
<head><title>Situatie elevi</title></head>
<div id="Layer3" style="position:absolute; left:119; top:205;
width:881; height:739; z-index:2"
align="center">
<table width="665" border="0" cellpadding="5" cellspacing="0">
<caption valign="top">
<table width="660" bgcolor="#FFFF00" cellpadding=0 cellspacing=0
border=0>
<tr>
<td align="center" height="15">
<font size="5" color="#0000FF">
<b>DATE ELEVI </b> </font>
</td> </tr>
</table>
</caption>
<table cellpadding=5 cellspacing=0 border=0 width="75%">
<form method="post" action="PB7_Sesiune_sgpag.php">

Pagina 21
<tr><td> <font face="Courier" size="2">
<b>Nume:</b> </td> <td>
<input name="nume" size=20 maxlength=50>
</td> </tr> <tr> <td>
<b>Prenume:</b> </td> <td>
<input name="prenume" size=20 maxlength=50>
</td> </tr> <tr> <td>
<b>Nota la matematica:</b>
</td> <td>
<input name="nota1" size=20 maxlength=2>
</td> </tr> <tr> <td>
<b>Nota romana:</b>
</td><td>
<input name="nota2" size=20 maxlength=20>
</td> </tr> <tr> <td width="142">
<input type="submit" name="Inregistrare" value="Inregistrare">
</font> </form> </tr> </table>
<?php
if (isset($_POST['Inregistrare'])){
$nr_elevi=count($_SESSION['nume']);?>
<table cellpadding=5 cellspacing=0 border=0 width="75%">
<tr>
<th>Nume</th>
<th>Prenume</th>
<th>Nota matematica</th>
<th>Nota romana</th>
<th>Media</th>
</tr>
<?php
for ($i = 0; $i < $nr_elevi; $i++){ ?>
<tr>

Pagina 22
<td> <?php print $_SESSION['nume'][$i];?> </td>
<td> <?php print $_SESSION['prenume'][$i];?> </td>
<td> <?php print $_SESSION['nota1'][$i];?> </td>
<td> <?php print $_SESSION['nota2'][$i];?> </td>
<?php
$nr1=(int)($_SESSION['nota1'][$i]);
$nr2=(int)($_SESSION['nota2'][$i]);
$media=(($nr1+$nr2)/2);?>
<td><?php print $media;}}?></td></tr>
</table>
</body>
</html>

Pagina 23
Muncă individuală dedicată aprofundării conceptelor teoretice doban-
dite pana in acest punct

1. Calculați cifra de control a unui număr întreg prin însumarea cifrelor sale,
apoi însumând cifrele sumei, așa mai departe, până la o sumă de doar o cifră
obținută.
Exemplu: Cifra de control a numărului întreg 1971 este 9 (1971 = 18 =
9).

2. Imprimați toate puterile mai mici decât k dintr-un număr întreg dat n.
Exemplu: Pentru n = 5 și k = 100, tipăriți numerele 1, 5, 25.
3. Determinați cel mai mic număr care poate fi format cu cifrele unui număr
citit de la tastatură.
Exemplu: pentru numărul 30027 rezultatul este 20037.
4. Generați în ordine crescătoare primele n numere din setul M definit ca:
a. Numărul 1 aparține lui M
b. Dacă x aparține lui M, atunci 2x + 1 și 3x + 1 aparțin și lui M
c. M nu conține alte elemente
Exemplu: primele 10 numere din M sunt 1, 3, 4, 7, 9, 10, 13, 15, 19,
21.

5. Se consideră un număr întreg n. Imprimați cel mai apropiat număr prim la


n.
Exemplu: Pentru n = 22, rezultatul este 23, în timp ce pentru n = 20,
rezultatul este 19.

6. Imprimați toate numerele cu maximum 2 cifre de forma xy cu proprietatea


care ultima cifră a lui (xy) 2 este y.
Exemplu: 52 = 25 sau (10) 2 = 100 sau (76) 2 = 5776.
7. Citiți numerele întregi până când este citit numărul 0. Imprimați numărul de
perechi n1 și n2 de numere citite consecutiv cu proprietatea pe care numărul
de cifre 5 din n1 este strict mai mare decât numărul de cifre 5 din n2.
Exemplu: Dacă numerele citite sunt 182, 457.341, 497, 5597, 1335, 15,
38, 5, 0 decât rezultatul este 3 (deoarece perechile 457-341, 5597-1335, 15-
38 satisfac proprietate necesară).

8. Generați toate numerele prime care au n cifre cu proprietatea că toate sale


prefixele sunt, de asemenea, prime.
Exemplu: Pentru n = 2 primul număr este 23 (2, 23 sunt numere prime).
9. Citiți un număr natural. Formați un alt număr din cifrele sale găsite în poziții
impare (de la stânga la dreapta).

Pagina 24
Exemplu: Pentru 1234, rezultatul este 13.
10. Citiți numerele care au cel puțin 2 cifre până când este dat numărul 0.
Imprimați câte numere au cifra unității mai mică decât cifra zecilor.
Exemplu: Dacă numerele citite sunt 25, 653, 2965, 211, 154, 1256, va fi
afișată 0 valoarea 3.

11. Un număr n este special dacă există un număr natural m astfel încât n =
m + S (m) unde S (m) este suma cifrelor lui m. Verificați dacă un număr dat
este special.
Exemplu: 1235 este special (1235 = 1225 + 10)
12. Imprimați numărul de cifre comune a două numere, precum și cifrele.
Exemplu: 21348 și 14513 au 3 cifre comune și sunt 1,3,4.
13. Imprimați numerele de n cifre egale cu k înmulțite cu produsul lor.
Se dau numerele n și k (n între 1 și 9, k între 1 și 1000).
Exemplu: Pentru n = 3 și k = 5 singurul număr care îndeplinește propri-
etățile solicitate este 175 (5 * (1 * 7 * 5)).
14. Dat fiind un număr natural n, determinați cel mai mare număr p având
proprietatea că 2 p este mai mic sau egal cu n.
Exemplu: Pentru n = 133, rezultatul este p = 7 (27 = 128, 28 = 256).

Muncă individual dedicate aprofundării formularelor și a tablourilor


unidimensionale

1. Se citește un vector de numere întregi, de lungime n. Se cere:


a. Să se calculeze suma cifrelor fiecarui element din vector.
b. Să se calculeze suma elementelor din vector care au suma cifrelor
egala cu 10.
2. Se citește un vector de numere întregi, de lungime n. Se cere:
a. Să se afișeze, pentru fiecare element al vectorului cifra sa maximă.
b. Să se determine numărul elementelor din vector ce au cifra maxima
impară.
3. Se citește un vector de numere întregi, de lungime n. Se cere:
a. Să se determine, pentru fiecare element al vectorului daca este prim
sau nu. Se va afișa valoarea elementului și mesajul “Este/Nu este numar
prim”.
b. Să se determine media aritmetica a elementelor prime din vector.
Daca nu există elemente prime, se va afișa mesajul ” Vectorul nu contine
valori prime.”

Pagina 25
4. Se citește un vector de numere întregi, de lungime n. Se cere:
a. Să se înlocuiască valoarea maxima a elementelor din vector cu inver-
sul sau. (Presupunem ca maximul este unic)
5. Se citeste un vector de numere întregi, de lungime n. Se cere:
a. Să se determine valoarea minimă a elementelor din vector.
b. Presupunând ca minimul nu este unic, înlocuiți fiecare apariție a ele-
mentului de valoare minima cu cifra sa maximă.
6. Se citește un vector de numere întregi, de lungime n și un număr întreg x.
Se cere:
a. Determinați dacă valoarea x se găsește în vector. Afișati mesajul DA
sau NU, după cum este cazul. (cautarea unei valori intr-un vector)
b. Determinați dacă TOATE elementele din vectorul v sunt divizibile cu
x. Afișați mesajul DA sau NU, dupa cum este cazul. (verificarea unei
proprietati pentru toate elementele din vector)
7. Verificați dacă toate elementele vectorului sunt numere:
a. Pare
b. Prime
c. Perfecte
d. Daca aparțin intervalului a,b
e. Daca sunt in ordine crescatoare/descrescatoare

Pagina 26

S-ar putea să vă placă și