Algoritem za 4 mestna števila
|
Stevie Jobs
Pridružen/a: 14.06.2008 |
Prispevkov: 1964 |
Kraj: Kamnik |
|
 |
|
Prispevek: #1 Objavljeno 18.02.2011 14:11:18 Algoritem za 4 mestna števila |
|
Zdravo,
zelo prav bi mi prišel kakšen program (algoritem) v katerega bi vpisal nekaj 4 mestnih števil in na podlagih teh bi mi naključno izbral eno 4mestno število ki ga nisem vpisal.
Če ima slučajno kdo ve kje bi lahko dobil tak program naj mi prosim čimprej sporoči 
|
 |
Jabuk Staff
Pridružen/a: 26.08.2009 |
Prispevkov: 14582 |
Kraj: Ljubljana |
|
 |
|
Prispevek: #2 Objavljeno 18.02.2011 14:12:13 |
|
RN nagradna igra ? 
|
 |
Stevie Jobs
Pridružen/a: 14.06.2008 |
Prispevkov: 1964 |
Kraj: Kamnik |
|
 |
|
Prispevek: #3 Objavljeno 18.02.2011 14:16:31 |
|
Ja 
|
 |
Stevie Jabuk
Pridružen/a: 18.03.2010 |
Prispevkov: 952 |
|
|
 |
|
Prispevek: #4 Objavljeno 18.02.2011 14:20:13 |
|
http://www.simongibson.com/intranet/random/default.asp
če se pa ponavljajo pa nevem, lahko pa sam napišeš program 
|
 |
iPhone Developer
Pridružen/a: 19.09.2008 |
Prispevkov: 10564 |
|
|
 |
|
Prispevek: #5 Objavljeno 18.02.2011 14:46:51 Re: Algoritem za 4 mestna števila |
|
ursic je napisal/a: | Zdravo,
zelo prav bi mi prišel kakšen program (algoritem) v katerega bi vpisal nekaj 4 mestnih števil in na podlagih teh bi mi naključno izbral eno 4mestno število ki ga nisem vpisal.
Če ima slučajno kdo ve kje bi lahko dobil tak program naj mi prosim čimprej sporoči  |
Zakaj pa to potrebuješ? Moraš vedeti, da prave naključnosti v računalniškem svetu ni. So sami približno random algoritmi, ki se nam ljudem zdijo "naključni".
Veliko programskih jezikov ima že vgrajene random funkcije... mogoče ti to zadostuje.
PHP skriptica bi zgledala takole:
Koda: |
$vnesene_stevilke = explode(",", $_GET["stevilke"]);
$random = false;
while($random==false) {
$random = rand(1000,9999); // naključno število med 1000 in 9999
foreach($vnesene_stevilke as $stevilka) {
if($stevilka==$random) {
$random = false; // če je random številka enaka že obstoječi, jo zanemarimo
break;
}
}
}
echo $random; |
Skriptico bi se pa klicalo z GET parametrom vnesenih številk, ki so med seboj ločene z vejico.
Npr.:
Koda: | php random4digit.php?stevilke=1111,2222,3333,4444 |
|
 |
Stevie Jabuk
Pridružen/a: 18.03.2010 |
Prispevkov: 952 |
|
|
 |
|
Prispevek: #6 Objavljeno 18.02.2011 14:49:58 |
|
mh si pa pogoru s tem pri stevilkat 0001, 0002 ...
tko da bo treba se mal kode
|
 |
Stevie Jobs
Pridružen/a: 14.06.2008 |
Prispevkov: 1964 |
Kraj: Kamnik |
|
 |
|
Prispevek: #7 Objavljeno 18.02.2011 14:52:10 |
|
@no9
poznam to, programa pa neznam spisat
@mikrohard
Vem da te naključnosti ni
Potrebujem za neko nagradno igro
Hvala ti za tole kodo samo nimam pojma kako je zame uporabna, mi lahko prosim malo več poveš?
|
 |
Stevie Wozniak
Pridružen/a: 30.12.2010 |
Prispevkov: 1435 |
|
|
 |
|
Prispevek: #8 Objavljeno 18.02.2011 14:53:45 |
|
Narediš PHP datoteko in notri vstaviš to kodo ter jo naložiš na strežnik. 
|
 |
iPhone Developer
Pridružen/a: 19.09.2008 |
Prispevkov: 10564 |
|
|
 |
|
Prispevek: #9 Objavljeno 18.02.2011 14:56:23 |
|
no9 je napisal/a: | mh si pa pogoru s tem pri stevilkat 0001, 0002 ...
tko da bo treba se mal kode |
Te sem namerno zanemaril, ker to zame niso štirimestne številke v pravem smislu.
Se pa definitivno da tudi to narediti, če ima željo. Ampak potem bi bilo treba definirat, ali bo vhodne številke vnašal vedno s štirimi mesti, ali bodo sprednje ničle pri vnosu zanemarjene.
@ursic: Ti je že aleksy povedal. Daš na server. Ali pa si na lokalni računalnik naložiš php in jo kličeš iz ukazne vrstice.
|
 |
Stevie Jobs
Pridružen/a: 14.06.2008 |
Prispevkov: 1964 |
Kraj: Kamnik |
|
 |
|
Prispevek: #10 Objavljeno 18.02.2011 14:58:51 |
|
Hvala vsem za pomoč.
kako pa naložim php na lokalni računalnik in pol kličem iz ukazne vsrtice ??
Sm pa mislil da bo to mal bolj enostavno 
|
 |
iPhone Developer
Pridružen/a: 19.09.2008 |
Prispevkov: 10564 |
|
|
 |
|
Prispevek: #11 Objavljeno 18.02.2011 15:04:37 |
|
Še vedno nisi napisal, zakaj to sploh potrebuješ oz. kaj je tvoj cilj?
Boš to "na roko" uporabljal, ali boš integriral v kako obstoječo kodo?
Sicer pa skripta, ki upošteva tudi manjša števila z ničlami spredaj.
Koda: | <?php
$vnesene_stevilke = explode(",", $_GET["stevilke"]);
$random = false;
while($random==false) {
$random = rand(0,9999); // naključno število med 1000 in 9999
foreach($vnesene_stevilke as $stevilka) {
if((int)$stevilka==(int)$random) {
$random = false; // če je random številka enaka že obstoječi, jo zanemarimo
break;
}
}
}
$output = sprintf("%04d",(int)$random);
echo $output;
?> |
Na mojem serverju: http://linode.sledim.si/random.php?stevilke=1244,3234,242,4245,6622
|
 |
Jabuk Staff
Pridružen/a: 26.08.2009 |
Prispevkov: 14582 |
Kraj: Ljubljana |
|
 |
|
Prispevek: #12 Objavljeno 18.02.2011 15:07:13 |
|
Bom jaz razložil. Gre se za nagradno igro kjer moraš ugotoviti 4 mestno kodo in telefon je tvoj.
Oni ti pošljejo email katere številke so že bile uporabljene. Sepravi rabiš vedet kater niso bile in potem random izbirati med njimi.
|
 |
iPhone Developer
Pridružen/a: 19.09.2008 |
Prispevkov: 10564 |
|
|
 |
|
Prispevek: #13 Objavljeno 18.02.2011 15:08:43 |
|
LoL... kaj vse bi nekateri šli delat za eno nagradno igro 
|
 |
Stevie Jobs
Pridružen/a: 14.06.2008 |
Prispevkov: 1964 |
Kraj: Kamnik |
|
 |
|
Prispevek: #14 Objavljeno 18.02.2011 15:10:36 |
|
Heh, sm doma bolan in mi je zelo dolgčas pa sem se odloču to naredit ;D
|
 |
Jabuk Staff
Pridružen/a: 26.08.2009 |
Prispevkov: 14582 |
Kraj: Ljubljana |
|
 |
|
Prispevek: #15 Objavljeno 18.02.2011 15:10:54 |
|
|
 |
iPhone Developer
Pridružen/a: 19.09.2008 |
Prispevkov: 10564 |
|
|
 |
|
Prispevek: #16 Objavljeno 18.02.2011 15:12:24 |
|
Potem pa naredi program, ki bo prebral email, iz njega sam zaznal obstoječe kode, iz tega zgeneriral neuporabljeno kodo in jo direktno posredoval v nagradno igro 
|
 |
Stevie Jobs
Pridružen/a: 14.06.2008 |
Prispevkov: 1964 |
Kraj: Kamnik |
|
 |
|
Prispevek: #17 Objavljeno 18.02.2011 15:12:43 |
|
@gpc17 Jest bi ga sigurno prodal, ker ga nerabim (mam iphona) 
|
 |
iPhone Developer
Pridružen/a: 19.09.2008 |
Prispevkov: 10564 |
|
|
 |
|
Prispevek: #18 Objavljeno 18.02.2011 15:14:58 |
|
Citiram: | HTC Desire je odklenjen! Bravo!!!! Uroš Škantar celotno uredništvo Revija Računalniške Novice ti čestita! Ostalim vsemi našim Facebook prijateljem pa sporočamo da bomo tekom vikenda sporočili nagrajence za ostale tolažilne nagrade. |
|
 |
Stevie Jobs
Pridružen/a: 14.06.2008 |
Prispevkov: 1964 |
Kraj: Kamnik |
|
 |
|
Prispevek: #19 Objavljeno 18.02.2011 15:19:04 |
|
Pa lih zdej k sm se spravu to delat 
|
 |
Stevie Jabuk
Pridružen/a: 30.11.2007 |
Prispevkov: 399 |
|
|
 |
|
Prispevek: #20 Objavljeno 18.02.2011 15:26:32 |
|
Tole kodo skopiraj v novo tekstovno datoteko in ji daj končnico .html in jo odpri v brskalniku.
Koda: |
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1250" />
<script>
function IzberiStevilo(){
var seznam = ","+document.forma.seznam.value.replace(/ /,"") + ",";
var found = false;
while(!found){
var num = Math.floor(Math.random() * 10000) +"";
while(num.length < 4) num = "0" + num;
if(num.length <10000 && seznam.indexOf(","+num+",") < 0){
found = true;
document.getElementById("izbrana").innerHTML = "Izbrana številka je <b>"+ num +"</b>.";
document.forma.seznam.value += ", "+ num;
}
}
}
</script>
</head>
<body>
<form name="forma">
<input type="text" name="seznam" value="1234, 2345, 4536" size="50">
<input type="button" name="b1" value="Poišči" onclick="javascript:IzberiStevilo();">
</form>
<div id="izbrana"></div>
</body>
</html>
|
|
 |