Atestat Informatica – Pascal/C/C++ – P. 21
Problema 21 din 25. Mai avem putin.
Subiect
In fisierul date.in se gasesc pe o singura linie, separate prin cate un spatiu, mai multe numere naturale din intervalul [10, 10.000.000-1].
Se considera subprogramele:
- - s1 cu un singur parametru k prin intermediul caruia primeste un numar natural nenul cu cel mult 6 cifre. Subprogramul returneaza numarul format din prima si ultima cifra a valorii parametrului k
- - s2 cu un singur parametru k prin intermediul caruia primeste un numar natural nenul cu cel mult 6 cifre. Subprogramul returneaza cel mai mic numar prim mai mare sau egal cu k
Cerinta
- - scrieti definitia completa a celor doua subprograme
- - sa se scrie programul principal Pascal/C/C++ care sa determine pentru fiecare numar x citit din fisierul date.in, cel mai mic numar prim mai mare sau egal cu numarul format din prima si ultima cifra a lui x, in aceasta ordine, folosind apeluri utile ale subprogramelor S1 si S2. Numerele prime determinate se vor afisa pe ecran, pe o singura linie, separate cate un spatiu
Rezolvare in Pascal
var f: text;
n: integer;
function s1(k: longint):integer;
var s: integer;
begin
s := k mod 10;
while (k>9) do k := k div 10;
s := k * 10 + s;
s1 := s;
end;
function prim(n: integer):boolean;
var i: integer;
begin
if (n=0) or (n=1) then
prim := false;
for i := 2 to trunc(sqrt(n)) do
if (n mod i = 0) then
prim := true;
end;
function s2(k: integer):integer;
begin
while not(prim(k)) do k := k + 1;
s2 := k;
end;
begin
assign(f, 'date.in');
reset(f);
while(not eof(f)) do begin
read(f, n);
write(s2(s1(n)), ' ');
end;
close(f);
end.
Rezolvare in C/C++
#include
#include
int s1(long k) {
int s=k%10;
while(k>9)
k=k/10;
s=k*10+s;
return s;
}
int prim(int n) {
for(int i=2; i>n) {
cout<<s2(s1(n))<<' ';
}
f.close();
}
C’ya next time!
Ti-a placut articolul Atestat Informatica – Pascal/C/C++ – P. 21?
TweetAi nevoie de rezolvarea unei probleme la informatica?
Iti recomandam si urmatoarele articole:
4 comentarii pentru Atestat Informatica – Pascal/C/C++ – P. 21
Discuta articolul Atestat Informatica – Pascal/C/C++ – P. 21
Contul tau
Categorii
- Atestat Info C/C++ (21)
- Atestat Info Pascal (21)
- Learn AJAX (3)
- Learn Android (5)
- Learn C++ (32)
- Learn CSS (11)
- Learn Database (9)
- Learn Flash (33)
- Learn HTML (14)
- Learn JAVA (9)
- Learn Javascript (14)
- Learn jQuery (17)
- Learn Pascal (28)
- Learn PHP (21)
- Learn SQL (5)
- Learn Visual FoxPro (4)
- Tips & Tricks (22)
Mozku Network
Ne gasesti si pe Facebook
Articole noi
- Cum sa detectati rezolutia telefonului intr-o aplicatie Android
- Cum se evita oprirea fortata a unei aplicatii
- Cum sa porniti o activitate noua in Android
- Cum sa adaugati un ImageView intr-o aplicatie Android
- Cum sa adaugati un Button intr-o aplicatie Android
- Cum sa utilizati un ArrayList in Java
- Bifeaza toate checkbox-urile folosind jQuery
- Validare formular folosind jQuery
Fisiere populare
- Proiect Atestat Informatica Visual FoxPro (439)
- Twitter Patterns (202)
- Flash Newsletter (126)
- Baza de date auto revizuita (99)
- hitTest Flash (99)
Marcaje articole
actionscript 2
AJAX
android
animatii Flash
animatii jQuery
as2
atestat informatica
atestat informatica intensiv
background css
baza de date in flash
baze de date
c++ start
compatibilitate browsere
conditional comments
css
efecte jQuery
flash
flash and php
functii javascript
html
invata c
invata Flash
invata Javascript
invata jQuery
invata pascal
invata php
invata sql
invata visual fox
Java
javascript
jQuery
layout html
learn
Learn CSS
Learn HTML
math in flash
numar cifre c++
Pascal
php functions
php queries
structuri
suma
suma cifrelor c++
tabel baza de date
vector

Marya Vlad
@Marya Vlad: Multumim, ai primit cadou 100 de puncte.
Super articolul acum am inteles cum lucreaza function:D
multzumim stefan:D:)