online compiler and debugger for c/c++

code. compile. run. debug. share.
Source Code   
Language
def string_to_binary(requested_conversion): converted_output = [] for char in requested_conversion: converted_output.append(bin(ord(char))) print(*converted_output) def decimal_to_binary(requested_conversion): print(bin(requested_conversion)) def binary_to_decimal(requested_conversion): requested_conversion = requested_conversion[2:] requested_conversion = requested_conversion[::-1] concurrent_bit = 0 bit_power = 0 decimal_num = 0 for digit in requested_conversion: if requested_conversion[concurrent_bit] == '1': decimal_num += 2 ** bit_power else: decimal_num += 0 concurrent_bit += 1 bit_power += 1 print(decimal_num) # The function below is a copy of the original but for the purpose of the binary_to_string function and binary_to_hex function. def binary_to_decimal_special(requested_conversion): requested_conversion = requested_conversion[2:] requested_conversion = requested_conversion[::-1] concurrent_bit = 0 bit_power = 0 decimal_num = 0 for digit in requested_conversion: if requested_conversion[concurrent_bit] == '1': decimal_num += 2 ** bit_power else: decimal_num += 0 concurrent_bit += 1 bit_power += 1 return decimal_num def binary_to_string(requested_conversion): requested_conversion = requested_conversion.split(" ") list_of_chars_in_string = [] for char_binary_set in requested_conversion: integer_char_code = chr(binary_to_decimal_special(char_binary_set)) list_of_chars_in_string.append(integer_char_code) print(*list_of_chars_in_string, sep="") def string_to_hex(requested_conversion): converted_output = [] for char in requested_conversion: converted_output.append(hex(ord(char))) print(*converted_output) def decimal_to_hex(requested_conversion): print(hex(requested_conversion)) def hex_to_decimal(requested_conversion): requested_conversion = requested_conversion[2:] requested_conversion = requested_conversion[::-1] concurrent_bit = 0 bit_power = 0 decimal_num = 0 for digit in requested_conversion: if requested_conversion[concurrent_bit] == 'a': decimal_num += 10 * (16 ** bit_power) elif requested_conversion[concurrent_bit] == 'b': decimal_num += 11 * (16 ** bit_power) elif requested_conversion[concurrent_bit] == 'c': decimal_num += 12 * (16 ** bit_power) elif requested_conversion[concurrent_bit] == 'd': decimal_num += 13 * (16 ** bit_power) elif requested_conversion[concurrent_bit] == 'e': decimal_num += 14 * (16 ** bit_power) elif requested_conversion[concurrent_bit] == 'f': decimal_num += 15 * (16 ** bit_power) else: decimal_num += int(digit) * (16 ** bit_power) concurrent_bit += 1 bit_power += 1 print(decimal_num) # The function below is a copy of the original but for the purpose of the hex_to_string function. def hex_to_decimal_special(requested_conversion): requested_conversion = requested_conversion[2:] requested_conversion = requested_conversion[::-1] concurrent_bit = 0 bit_power = 0 decimal_num = 0 for digit in requested_conversion: if requested_conversion[concurrent_bit] == 'a': decimal_num += 10 * (16 ** bit_power) elif requested_conversion[concurrent_bit] == 'b': decimal_num += 11 * (16 ** bit_power) elif requested_conversion[concurrent_bit] == 'c': decimal_num += 12 * (16 ** bit_power) elif requested_conversion[concurrent_bit] == 'd': decimal_num += 13 * (16 ** bit_power) elif requested_conversion[concurrent_bit] == 'e': decimal_num += 14 * (16 ** bit_power) elif requested_conversion[concurrent_bit] == 'f': decimal_num += 15 * (16 ** bit_power) else: decimal_num += int(digit) * (16 ** bit_power) concurrent_bit += 1 bit_power += 1 return decimal_num def hex_to_string(requested_conversion): requested_conversion = requested_conversion.split(" ") list_of_chars_in_string = [] for char_hexa_set in requested_conversion: integer_char_code = chr(hex_to_decimal_special(char_hexa_set)) list_of_chars_in_string.append(integer_char_code) print(*list_of_chars_in_string, sep="") def hex_to_binary_decimalversion(requested_conversion): requested_conversion = requested_conversion[2:] concurrent_bit = 0 list_of_binary_portions = [] for digit in requested_conversion: if requested_conversion[concurrent_bit] == 'a': binary_translation = str(bin(10)) binary_translation = binary_translation[2:] list_of_binary_portions.append(binary_translation) elif requested_conversion[concurrent_bit] == 'b': binary_translation = str(bin(11)) binary_translation = binary_translation[2:] list_of_binary_portions.append(binary_translation) elif requested_conversion[concurrent_bit] == 'c': binary_translation = str(bin(12)) binary_translation = binary_translation[2:] list_of_binary_portions.append(binary_translation) elif requested_conversion[concurrent_bit] == 'd': binary_translation = str(bin(13)) binary_translation = binary_translation[2:] list_of_binary_portions.append(binary_translation) elif requested_conversion[concurrent_bit] == 'e': binary_translation = str(bin(14)) binary_translation = binary_translation[2:] list_of_binary_portions.append(binary_translation) elif requested_conversion[concurrent_bit] == 'f': binary_translation = str(bin(15)) binary_translation = binary_translation[2:] list_of_binary_portions.append(binary_translation) else: binary_translation = str(bin(int(digit))) binary_translation = binary_translation[2:] list_of_binary_portions.append(binary_translation) concurrent_bit += 1 for portion_index in range(len(list_of_binary_portions)): if len(list_of_binary_portions[portion_index]) == 1: list_of_binary_portions[portion_index] = "000" + list_of_binary_portions[portion_index] elif len(list_of_binary_portions[portion_index]) == 2: list_of_binary_portions[portion_index] = "00" + list_of_binary_portions[portion_index] elif len(list_of_binary_portions[portion_index]) == 3: list_of_binary_portions[portion_index] = "0" + list_of_binary_portions[portion_index] else: list_of_binary_portions[portion_index] = list_of_binary_portions[portion_index] list_of_binary_portions.insert(0, "0b") print(*list_of_binary_portions, sep="") # The function below is a copy of the original but for the purpose of the hex_to_binary_stringversion function. def hex_to_binary_decimalversion_special(requested_conversion): requested_conversion = requested_conversion[2:] concurrent_bit = 0 list_of_binary_portions = [] for digit in requested_conversion: if requested_conversion[concurrent_bit] == 'a': binary_translation = str(bin(10)) binary_translation = binary_translation[2:] list_of_binary_portions.append(binary_translation) elif requested_conversion[concurrent_bit] == 'b': binary_translation = str(bin(11)) binary_translation = binary_translation[2:] list_of_binary_portions.append(binary_translation) elif requested_conversion[concurrent_bit] == 'c': binary_translation = str(bin(12)) binary_translation = binary_translation[2:] list_of_binary_portions.append(binary_translation) elif requested_conversion[concurrent_bit] == 'd': binary_translation = str(bin(13)) binary_translation = binary_translation[2:] list_of_binary_portions.append(binary_translation) elif requested_conversion[concurrent_bit] == 'e': binary_translation = str(bin(14)) binary_translation = binary_translation[2:] list_of_binary_portions.append(binary_translation) elif requested_conversion[concurrent_bit] == 'f': binary_translation = str(bin(15)) binary_translation = binary_translation[2:] list_of_binary_portions.append(binary_translation) else: binary_translation = str(bin(int(digit))) binary_translation = binary_translation[2:] list_of_binary_portions.append(binary_translation) concurrent_bit += 1 for portion_index in range(len(list_of_binary_portions)): if len(list_of_binary_portions[portion_index]) == 1: list_of_binary_portions[portion_index] = "000" + list_of_binary_portions[portion_index] elif len(list_of_binary_portions[portion_index]) == 2: list_of_binary_portions[portion_index] = "00" + list_of_binary_portions[portion_index] elif len(list_of_binary_portions[portion_index]) == 3: list_of_binary_portions[portion_index] = "0" + list_of_binary_portions[portion_index] else: list_of_binary_portions[portion_index] = list_of_binary_portions[portion_index] list_of_binary_portions.insert(0, "0b") return "".join(list_of_binary_portions) import math def binary_to_hex_decimalversion(requested_conversion): requested_conversion = requested_conversion[2:] requested_conversion = requested_conversion[::-1] splitting_iterations = math.floor(len(requested_conversion) / 4) split_binary_product = [] for split in range(splitting_iterations): split_binary_product.append(requested_conversion[:4]) requested_conversion = requested_conversion[4:] if len(requested_conversion) > 0: split_binary_product.append(requested_conversion) index_of_product = 0 for i in range(len(split_binary_product)): split_binary_product[index_of_product] = split_binary_product[index_of_product][::-1] index_of_product += 1 split_binary_product.reverse() index_of_product = 0 for i in range(len(split_binary_product)): binary_to_decimal_special(split_binary_product[index_of_product]) index_of_product += 1 index_of_product = 0 split_hex_products = [] for i in range(len(split_binary_product)): split_hex_products.append(int(split_binary_product[index_of_product], 2)) index_of_product += 1 for portion_num in range(len(split_hex_products)): if split_hex_products[portion_num] == 10: split_hex_products[portion_num] = 'a' elif split_hex_products[portion_num] == 11: split_hex_products[portion_num] = 'b' elif split_hex_products[portion_num] == 12: split_hex_products[portion_num] = 'c' elif split_hex_products[portion_num] == 13: split_hex_products[portion_num] = 'd' elif split_hex_products[portion_num] == 14: split_hex_products[portion_num] = 'e' elif split_hex_products[portion_num] == 15: split_hex_products[portion_num] = 'f' else: split_hex_products[portion_num] = split_hex_products[portion_num] split_hex_products.insert(0, '0x') print(*split_hex_products, sep="") # The function below is a copy of the original but for the purpose of the binary_to_hex_stringversion function. def binary_to_decimal_special_v2(requested_conversion): requested_conversion = requested_conversion[::-1] concurrent_bit = 0 bit_power = 0 decimal_num = 0 for digit in requested_conversion: if requested_conversion[concurrent_bit] == '1': decimal_num += 2 ** bit_power else: decimal_num += 0 concurrent_bit += 1 bit_power += 1 return decimal_num # The function below is a copy of the original but for the purpose of the binary_to_hex_stringversion function. def binary_to_hex_decimalversion_special(requested_conversion): requested_conversion = requested_conversion[2:] requested_conversion = requested_conversion[::-1] splitting_iterations = math.floor(len(requested_conversion) / 4) split_binary_product = [] for split in range(splitting_iterations): split_binary_product.append(requested_conversion[:4]) requested_conversion = requested_conversion[4:] if len(requested_conversion) > 0: split_binary_product.append(requested_conversion) index_of_product = 0 for i in range(len(split_binary_product)): split_binary_product[index_of_product] = split_binary_product[index_of_product][::-1] index_of_product += 1 split_binary_product.reverse() index_of_product = 0 for i in range(len(split_binary_product)): binary_to_decimal_special_v2(split_binary_product[index_of_product]) index_of_product += 1 index_of_product = 0 split_hex_products = [] for i in range(len(split_binary_product)): split_hex_products.append(int(split_binary_product[index_of_product], 2)) index_of_product += 1 for portion_num in range(len(split_hex_products)): if split_hex_products[portion_num] == 10: split_hex_products[portion_num] = 'a' elif split_hex_products[portion_num] == 11: split_hex_products[portion_num] = 'b' elif split_hex_products[portion_num] == 12: split_hex_products[portion_num] = 'c' elif split_hex_products[portion_num] == 13: split_hex_products[portion_num] = 'd' elif split_hex_products[portion_num] == 14: split_hex_products[portion_num] = 'e' elif split_hex_products[portion_num] == 15: split_hex_products[portion_num] = 'f' else: split_hex_products[portion_num] = split_hex_products[portion_num] split_hex_products.insert(0, '0x') for product in range(len(split_hex_products)): split_hex_products[product] = str(split_hex_products[product]) return "".join(split_hex_products) def hex_to_binary_stringversion(requested_conversion): requested_conversion = requested_conversion.split(" ") list_of_chars_in_binary_string = [] for char_hex_set in requested_conversion: binary_converted = hex_to_binary_decimalversion_special(char_hex_set) list_of_chars_in_binary_string.append(binary_converted) print(*list_of_chars_in_binary_string, sep=" ") def binary_to_hex_stringversion(requested_conversion): requested_conversion = requested_conversion.split(" ") list_of_chars_in_hex_string = [] for char_binary_set in requested_conversion: hex_converted = binary_to_hex_decimalversion_special(char_binary_set) list_of_chars_in_hex_string.append(hex_converted) print(*list_of_chars_in_hex_string, sep=" ") import sys def MainMenu(): while True: print("Welcome to the compoooter decipherer. This program can meet all your needs regarding the languages of binary, hexadecimal, and regular decimal/string.\n\n") print("""So, in terms of conversions, the following methods are available:\n string_to_binary → format exemplar: "Hi" decimal_to_binary → format exemplar: 10 decimal_to_hex → format exemplar: 10 string_to_hex → format exemplar: "Hi" binary_to_decimal → format exemplar: "0b1010" binary_to_string → format exemplar: "0b01001000 0b01101001" hex_to_decimal → format exemplar: "0xa" hex_to_string → format exemplar: "4869" hex_to_binary_decimalversion → format exemplar: "0xa" hex_to_binary_stringversion → format exemplar: "4869" binary_to_hex_decimalversion → format exemplar: "0b1010" binary_to_hex_stringversion → format exemplar: "0b01001000 0b01101001"\n""") print("\nMake sure to go through all of these, and figure out which ones you want to use. In the exemplars, any time a number is involved in conversion, it is the number '10'. Any time a string is involved in conversion, it is the string 'Hi'. So, let's get to converting!\n\n") print("_"*10 + "\n\n") UseConversion() print("_"*10 + "\n") confirmation = str(input("Would you like to perform another conversion?\n\nType 'Y' for if you would like to go back to the menu, or 'N' if you want to terminate the program: ")) if confirmation.upper() == 'Y': print("\nOkay! Redirecting you back to the beginning.\n\n") continue elif confirmation.upper() == 'N': print("\nOkay! Terminating the program.") sys.exit() else: print("\nInvalid input given. Terminating program anyway.") sys.exit() def UseConversion(): method = str(input("Above was given a list of the different conversion functions which are usable. So, what method would you like to use?\n\nType the function exactly how it said in the list here:\n\n")) print("") parameters = str(input("All right, so what are you wanting to convert? Type your conversion request in the appropriate format needed here:\n\n")) print("\nVery well then. The conversion has succeeded, and your converted request is below:\n") eval(method + "(" + parameters + ")") print("\n\nGo ahead and use that for whatever you need to. Or, use the converter again with this converted product to convert it to something else!\n") # Run the program MainMenu()

Compiling Program...

Command line arguments:
Standard Input: Interactive Console Text

                

                

Program is not being debugged. Click "Debug" button to start program in debug mode.

#FunctionFile:Line
VariableValue
RegisterValue
ExpressionValue