» »

Zanka z zajemanjem števk

Zanka z zajemanjem števk

timharfis ::

Zdravo!

Upam, da sem izbral pravo temo, zaradi lenobe v srednji šoli bi zdaj za eno teoretično nalogo rabil malo matematične pomoči. Imam recimo kar Pi, kjer bi želel v zanki vsakič zajet naslednjo decimalno števko, torej:

prvič
π -> 1
drugič
π -> 4
in tako naprej do prekinitve

Kako bi izgledal, zaenkrat kar preprost matematični, zapis tega "navodila"?

Hvala!

misticnimrk ::

jaz ti dam psevdo kodo, ti si prevedi v matematično navodilo...

float mynumber = 3.1416
int n = 0
do
    n = (mynumber * 10) mod 10
    mynumber *= 10
while true

Zgodovina sprememb…

genesiss ::

To zgoraj ne bo v redu, ker dela samo do "četrtič".

HotBurek ::

Je ratal, in to manj kot 100 lajner.

Evo, koda spodaj, Python 3.7, lahko pomodificiraš in poenostaviš.

#!/usr/bin/python3.7

import math;

# define what to print
printinput = True;
printtower = True;
printline = True;

# save pi into string
pistring = format(math.pi, ".50f");

# get only whole numer
piwhole = "";
if pistring.find(".") > -1:
    piwhole = pistring[:pistring.find(".")];
else:
    piwhole = pistring;

# get only decimals
pidecimals = "";
if pistring.find(".") > -1:
    pidecimals = pistring[pistring.find(".") + len("."):];

if printinput == True:
    print("--INPUT--");
    print("pistring=" + str(pistring));
    print("\t" + "piwhole=" + str(piwhole));
    print("\t" + "pidecimals=" + str(pidecimals) + "\n");

# print whole part
if len(piwhole) > 0:

    # --WHOLE TOWER--
    if printtower == True:
        print("--WHOLE TOWER--");
        for i in range(0, len(piwhole)):
            print("[idx-" + str(i) + str("]=") + str(piwhole[i]));

    # --WHOLE INLINE--
    if printline == True:
        print("--WHOLE INLINE--");
        print("number = ", end="");
        for i in range(0, len(piwhole)):
            if i == 0:
                print("|", end="");
            if i < 10:
                print(str(piwhole[i]), end="|");
            else:
                print(" " + str(piwhole[i]), end="|");

        print("");
        print(" index = ", end="");
        for i in range(0, len(piwhole)):
            if i == 0:
                print("|", end="");
            print(str(i), end="|");
        print("");

print("");

if len(pidecimals) > 0:

    # --DECIMAL TOWER--
    if printtower == True:
        print("--DECIMAL TOWER--");
        for i in range(0, len(pidecimals)):
            print("[idx-" + str(i) + str("]=") + str(pidecimals[i]));

    # --WHOLE INLINE--
    if printline == True:
        print("--DECIMAL INLINE--");
        print("number = ", end="");
        for i in range(0, len(pidecimals)):
            if i == 0:
                print("|", end="");
            if i < 10:
                print(str(pidecimals[i]), end="|");
            else:
                print(" " + str(pidecimals[i]), end="|");

        print("");
        print(" index = ", end="");
        for i in range(0, len(pidecimals)):
            if i == 0:
                print("|", end="");
            print(str(i), end="|");
        print("");

print("");
print("Finaly...");
root@debian:/# iptraf-ng
fatal: This program requires a screen size of at least 80 columns by 24 lines
Please resize your window

timharfis ::

Najlepša hvala! Poskusim zdej zvest v en preprostejši zapis :)

Arey ::

v JSju smo žal malo omejeni z decimalkami, ampak ok:

const pi = Math.PI.toString().slice(2);

let wasCancelled = false;
let pos = 0;

while (!wasCancelled && pos <= pi.length) {
  console.log(pi.slice(pos, pos + 1));
  pos++;
}

misticnimrk ::

genesiss je izjavil:

To zgoraj ne bo v redu, ker dela samo do "četrtič".


če definiraš samo 4 decimalke ja, drugače pa bi moglo delat do zadnje definirane decimalke, ki jo ima tip spremenljivke.


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

pomoč pri nalogi

Oddelek: Programiranje
13746 (305) SloKin
»

[python] project euler problem

Oddelek: Programiranje
15850 (402) Spura
»

[Python] Domači nalogi

Oddelek: Programiranje
332131 (1021) ragezor

python pomoč

Oddelek: Programiranje
392524 (1445) Mavrik
»

[Python] učenje

Oddelek: Programiranje
372186 (1483) Isotropic

Več podobnih tem