Pereiti prie turinio

Padėkite išspręsti du JPM uždavinius


Rekomenduojami pranešimai

1.Šešiaženklis autobuso bilieto numeris laikomas laimingu, jeigu pirmųjų trijų skaitmenų

suma yra lygi paskutiniųjų trijų skaitmenų sumai.

Parašykite programą, kurioje būtų panaudota funkcija, kurios reikšmė būtų true, jeigu bilieto

numeris laimingas ir false – priešingu atveju. Laikykite, kad visi bilietai, kurių numeriai

sudaryti iš kitokio skaitmenų skaičiaus, yra nelaimingi.

 

2. Duoti du skaičiai skait ir vard – paprastosios trupmenos skaitiklis ir vardiklis. Parašykite

programą duotai trupmenai suprastinti. Joje panaudokite procedūrą.

 

Kam nesunku išspręskit...

Didelis ačiū :rolleyes:

Nuoroda į pranešimą
Dalintis kituose puslapiuose
1.Šešiaženklis autobuso bilieto numeris laikomas laimingu, jeigu pirmųjų trijų skaitmenų

suma yra lygi paskutiniųjų trijų skaitmenų sumai.

Parašykite programą, kurioje būtų panaudota funkcija, kurios reikšmė būtų true, jeigu bilieto

numeris laimingas ir false – priešingu atveju. Laikykite, kad visi bilietai, kurių numeriai

sudaryti iš kitokio skaitmenų skaičiaus, yra nelaimingi.

Neparašyta, ką programa turi daryti, tai paprasčiausiai grąžina TRUE jei įvestas bilieto numeris laimingas arba gražina FALSE, jei nelaimingas:

program bilietas;
var n: longint;
function tikrinam(numeris:longint):boolean;
var pirmu_suma, paskutiniu_suma : integer;
begin
	if (numeris div 100000 >= 10) or (numeris div 100000 = 0) then
		 tikrinam:=false
	else begin
		pirmu_suma := numeris div 100000 +
					  numeris div 10000 mod 10 +
					  numeris div 1000 mod 10;
		paskutiniu_suma := numeris div 100 mod 10 +
						   numeris div 10 mod 10 +
						   numeris mod 10;
		if (pirmu_suma = paskutiniu_suma) then tikrinam := true
										  else tikrinam := false;
		 end;
end;
begin
read(n);
write(tikrinam(n));
end.

:rolleyes:

Nuoroda į pranešimą
Dalintis kituose puslapiuose

Neparašyta, ką programa turi daryti, tai paprasčiausiai grąžina TRUE jei įvestas bilieto numeris laimingas arba gražina FALSE, jei nelaimingas:

program bilietas;
var n: longint;
function tikrinam(numeris:longint):boolean;
var pirmu_suma, paskutiniu_suma : integer;
begin
	if (numeris div 100000 >= 10) or (numeris div 100000 = 0) then
		 ...
read(n);
write(tikrinam(n));
end.

:rolleyes:

 

ačiū

Nuoroda į pranešimą
Dalintis kituose puslapiuose
O ar antrą uždavinį kas padės išspręst ? :)
program prast;
var skait, vard, i : integer;
viskas : boolean;
procedure prastinam(var skait, vard: integer);
var i, max: integer;
begin
	for i := 1 to skait do
		if (skait mod i = 0) and (vard mod i = 0)
			then max := i;
	if not (max = 0) then
		begin
			skait := skait div max;
			vard := vard div max;
		end;
end;
begin
read(skait, vard);
prastinam(skait, vard);
writeln(skait);
writeln(vard);
Readln;
Readln;
end.

 

Pats algoritmas greičio atžvilgiu gal ir nėra optimaliausias, bet pakankamai aiškus ir suprantamas. :rolleyes:

Beje, neapibrėžta ką daryti, jei atsiranda sveikų skaičių. Mano duotas algoritmas jų nekelia prieš trupmeninę dalį, o tiesiog palieka tarkim 3/2 arba 2/1.

:)

Nuoroda į pranešimą
Dalintis kituose puslapiuose

Prisijunkite prie diskusijos

Jūs galite rašyti dabar, o registruotis vėliau. Jeigu turite paskyrą, prisijunkite dabar, kad rašytumėte iš savo paskyros.

Svečias
Parašykite atsakymą...

×   Įdėta kaip raiškusis tekstas.   Atkurti formatavimą

  Only 75 emoji are allowed.

×   Nuorodos turinys įdėtas automatiškai.   Rodyti kaip įprastą nuorodą

×   Jūsų anksčiau įrašytas turinys buvo atkurtas.   Išvalyti redaktorių

×   You cannot paste images directly. Upload or insert images from URL.

Įkraunama...
  • Dabar naršo   0 narių

    Nei vienas registruotas narys šiuo metu nežiūri šio puslapio.

  • Prisijunk prie bendruomenės dabar!

    Uždarbis.lt nariai domisi verslo, IT ir asmeninio tobulėjimo temomis, kartu sprendžia problemas, dalinasi žiniomis ir idėjomis, sutinka būsimus verslo partnerius ir dalyvauja gyvuose susitikimuose.

    Užsiregistruok dabar ir galėsi:

    ✔️ Dalyvauti diskusijose;

    ✔️ Kurti naujas temas;

    ✔️ Rašyti atsakymus;

    ✔️ Vertinti kitų žmonių pranešimus;

    ✔️ Susisiekti su bet kuriuo nariu asmeniškai;

    ✔️ Naudotis tamsia dizaino versija;

    ir dar daugiau.

    Registracija trunka ~30 sek. ir yra visiškai nemokama.

  • Naujausios temos

  • Karštos temos

×
×
  • Pasirinkite naujai kuriamo turinio tipą...