SumWTF

Ta program je eden v seriji obskurnih programov z obskurnimi algoritmi.

#!/usr/bin/python
import random
n = random.randint(0, 1000)
a1 = random.randint(0, 1000)
b1 = random.randint(0, 1000)
a = int(input('Vpisite prvo stevilo: '))
b = int(input('Vpisite drugo stevilo: '))
while n - a1 - b1 == 0 or a1 - a == 0 or b1 - b == 0:
break

while a - a1 != 0 or b - b1 != 0 or n - a1 - b1 != 0:
n = random.randint(0, 100)
a1 = random.randint(0, 100)
b1 = random.randint(0, 100)
print \"Izracunali ste\", a, \"+\",b, \"in rezultat je?:\", n

Output je pa npr:
$ time python sestevalnik3.py 
Vpisite prvo stevilo: 2
Vpisite drugo stevilo: 2
Izracunali ste 2 + 2 in rezultat je?: 4

real 728m23.393s
user 721m55.015s
sys 0m28.814s

Imam še obliko enakega algoritma v C++ kodi:
#include <iostream>
#include <cmath>
#include <cstdlib>

using namespace std;

main() {
int a,b;
int a1,b1;
int sum;
bool resu(0);
srand((unsigned)time(0));
cout << \"a: \";
cin >> a;
cout << \"b: \";
cin >> b;
cout << \"a+b=\";
while(resu==false){
sum=rand();
a1=(int)(rand()/RAND_MAX)*sum;
b1=(int)(rand()/RAND_MAX)*sum;
if (a1+b1==sum) && (((a1==a) && (b1==b)) || ((a1==b) && (b1==a))) resu=true;
}
cout << sum;
}

Če se kdo spomni še kakšnega podobnega algoritma. Z besedo na dan.
Za komentiranje se prijavite ali pa se vpišite.