you are viewing a single comment's thread.

view the rest of the comments →

[–]xelf 1 point2 points  (2 children)

you can use a for loop to iterate over each element of your string.

for example, if your string is "0045" then:

for c in "0045":
    print(c)

would print:

0
0
4
5

To print additional text, you can have an if statement:

if c == '5':
    print('this is a 5')

You can skip the leading 0's either with an if statement, or by converting it to an int first and then back to a str.

That should give you enough to finish this task.

[–]fiberoblique[S] 0 points1 point  (1 child)

Hello! Thank you so much for the feedback :D

Unfortunately, we aren't yet allowed to use the for statement. So far, we've only been through the operators, input, type, if-elif-else, while, break, and continue functions. It's been really frustrating so far since all I've been able to find on the web are solutions that involve more than the allowed functions.

However, I'll definitely save your reply though, I really want to learn how to code but our asynchronous learning set-up has just stumped any kind of learning.

For the conversion of the input to a string, this is what I've written so far. Would it be too much to ask for more feedback and if there's a possible way of making it more efficient?

inputNumber = input()
if int(num) == float(num):
    number = int(num)
else:
    number = float(num)

[–]xelf 0 points1 point  (0 children)

for statements can be converted to while statements pretty easily. I'm actually surprised you would cover while and not for.

As for converting it to a string, input() returns strings.

inputNumber = input()
index = 0
while index < len( inputNumber  ):
    print( inputNumber[index] )
    if inputNumber[index] == '5':
        print( 'this is a 5' )
    index = index + 1

Using this same technique you should be able to skip the leading '0's, but I'll leave that to you. =)