Pereiti prie turinio

Skaičiaus apvalinimas kol dalinsis iš 24


Rekomenduojami pranešimai

Reikia pagalbos, niekaip nesugalvoju, kaip čia reiktu daryti.

 

Yra skaičius tarkim 171 ir reikia, kad programa rastu artimiausi skaičiu kuris dalintusi iš 24 tai šiuo atveju būtų 168. Nes 168/24=7

Jei skaičius būtų 183 tai yra vidurys padalinus iš 24 tarp 7 ir 8 tiksliau atsakymas butu 7,5 bet reikia, kad apvalintu tada iki 8, o jei tarkim yra skaičius 182 tada apvalintu iki 7. Manau pagavot minti.

Nuoroda į pranešimą
Dalintis kituose puslapiuose

Aš daryčiau taip:

tikrinu, kas gaunasi padalinus skaičių iš 24: 171/24=7,125

Atimu sveiką skaičių: 7,125-7=0,125

Jei gautas skaičius mažesnis už 0,5 tada 24 padauginam iš sveiko skaičiaus: 24*7=168;

Jei daugiau arba lygus 0,5, tada 24*(7+1)=192.

 

Veikia tik su teigiamais skaičiais.

 

Čia mano tokia logika būtų.

Nuoroda į pranešimą
Dalintis kituose puslapiuose

Belmba žiūriu aš čia kažkaip ne taip paaiškinau.

 

Žodžiu reikia, kad skaičiu apvalinti iki artimiausio kuris lygiai dalinasi iš 24. tai jei yra jei tarkim skaičius 47 tai kad apvalintu iki 48 jei tarkim skaičius 52, 54, 57 apvalintu taip pat iki 48, jei 60, 61, 65 ir t.t. tada jau iki 72. Gal va taip aiškiau, prieš tai biški ne taip paaiškinau.

 

Aš daryčiau taip:

tikrinu, kas gaunasi padalinus skaičių iš 24: 171/24=7,125

Atimu sveiką skaičių: 7,125-7=0,125

Jei gautas skaičius mažesnis už 0,5 tada 24 padauginam iš sveiko skaičiaus: 24*7=168;

Jei daugiau arba lygus 0,5, tada 24*(7+1)=192.

 

Veikia tik su teigiamais skaičiais.

 

Čia mano tokia logika būtų.

 

 

Dėkui. Pamėginsiu pažiūrėsiu, kaip ten viskas gaunasi :)

Nuoroda į pranešimą
Dalintis kituose puslapiuose

Reikia pagalbos, niekaip nesugalvoju, kaip čia reiktu daryti.

 

Yra skaičius tarkim 171 ir reikia, kad programa rastu artimiausi skaičiu kuris dalintusi iš 24 tai šiuo atveju būtų 168. Nes 168/24=7

Jei skaičius būtų 183 tai yra vidurys padalinus iš 24 tarp 7 ir 8 tiksliau atsakymas butu 7,5 bet reikia, kad apvalintu tada iki 8, o jei tarkim yra skaičius 182 tada apvalintu iki 7. Manau pagavot minti.

PERL,PHP - turi aritmetini liekanos operatoriu - %

tai viso labo taip

<?php
$skaicius=171;
$dalmuo=24;
$liekana = $skaicius % $dalmuo;
$rez=$skaicius-$liekana;
echo $rez;
?>

Redagavo saknis
Nuoroda į pranešimą
Dalintis kituose puslapiuose

PERL,PHP - turi aritmetini liekanos operatoriu - %

tai viso labo taip

<?php
$skaicius=171;
$dalmuo=24;
$liekana = $skaicius % $dalmuo;
$rez=$skaicius-$liekana;
echo $rez;
?>

 

Juk parašė "artimiausias".

int answer;
int x = 47;
int remainder = x % 24;
if (remainder > 12) {
 answer = x + (24 - remainder);
}
else {
 answer = x - remainder;
}

Kaip ir sakė, veikia tik su teigiamais, bet paprasta parašyti programą, kad ir su neigiamais veiktų, bet vargu ar tau to reikia.

 

One line solution just for fun:

int r = x % 24, answer = r > 12 ? x + (24 - r) : x - r;

Nuoroda į pranešimą
Dalintis kituose puslapiuose
$daliklis = 24;
$skaicius = 59;
$sk = $skaicius;
$liekana = $skaicius % $daliklis;
$skirtumas1 = 0;
$rez1 = 0;
$skirtumas2 = 0;
$rez2 = 0;
while ($liekana != 0)
{
	$sk += 1;
	$skirtumas1 += 1;
	$liekana = $sk % $daliklis;
}
$rez1 = $sk;
$liekana = $skaicius % $daliklis;
$sk = $skaicius;
while ($liekana != 0)
{
	$sk -= 1;
	$skirtumas2 += 1;
	$liekana = $sk % $daliklis;
}
$rez2 = $sk;
if ($skirtumas1 > $skirtumas2)
{
	echo "Skaičius yra $rez2.";
} else
	{
		echo "Skaičius yra $rez1.";
	}

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ą...