تبدیل اعداد فارسی به انگلیسی
تابعی بنویسید که رشته ای دریافت کند و اعداد فارسی داخل آن را به اعداد انگلیسی تبدیل کند و برگرداند
تابعی بنویسید که رشته ای دریافت کند و اعداد فارسی داخل آن را به اعداد انگلیسی تبدیل کند و برگرداند
let msg = 'error' alert(msg)این جواب فقط برای مشترکین ویژه قابل مشاهده است
برای مشاهده این جواب باید اشتراک داشته باشی
دریافت اشتراکlet msg = 'error' alert(msg)این جواب فقط برای مشترکین ویژه قابل مشاهده است
برای مشاهده این جواب باید اشتراک داشته باشی
دریافت اشتراکlet msg = 'error' alert(msg)این جواب فقط برای مشترکین ویژه قابل مشاهده است
برای مشاهده این جواب باید اشتراک داشته باشی
دریافت اشتراک#تبدیل اعداد انگلیسی به فارسی و برعکس
#اعداد فارسی از فارسی ساز کپی شده است
num = {
'0':'۰',
'1':'۱',
'2':'۲',
'3':'۳',
'4':'۴',
'5':'۵',
'6':'۶',
'7':'۷',
'8':'۸',
'9':'۹'
}
#تغییر جای کلید و مقادیر در دیکشنری بالا
rev = {v: k for k, v in num.items()}
x = input('number:')
y = []
for char in x:
y.append(char)
output = ''
if y[0] in num:
for char in x:
output += num[char]
print(output)
else:
for char in x:
output += rev[char]
print(output)
جواب ناقص است، چون اگر جمله ورودی ، شامل ترکیبی از اعداد و حروف باشد، برنامه خطا میدهد!
def convert_persian_to_english(input_string):
persian_to_english = str.maketrans('۰۱۲۳۴۵۶۷۸۹', '0123456789')
return input_string.translate(persian_to_english)
def convert_farsi_to_english(text):
farsi_digits = ['۰', '۱', '۲', '۳', '۴', '۵', '۶', '۷', '۸', '۹']
english_digits = ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
for farsi, english in zip(farsi_digits, english_digits):
text = text.replace(farsi, english)
return text
input_text = input("لطفاً رشتهای با اعداد فارسی وارد کنید: ")
output_text = convert_farsi_to_english(input_text)
print("رشته تبدیل شده:", output_text)
استفاده از تابع zip خوبه ولی ساده تر از اون ، استفاده از متد isdigit است
adad_farsi = ["۰" ,"۱" ,"۲" ,"۳" ,"۴", "۵" ,"۶ ","۷","۸","۹"]
adad_english = ["0","1","2","3","4","5","6","7","8","9"]
def x(str):
result = ""
for c in str:
index= adad_english.index(c)
result += adad_farsi[index]
return result
i = input("adad : ")
print(x(i))
def fa2en(input_string):
output_string = ''.join([str(int(str(a))) if a.isdigit() else a for a in input_string])
return output_string
text = 'امروز اسفند سال ۱۴۰۳ است، امروز ۲۱ ام است!'
print(fa2en(text))
کد خوب و حرفهای نوشته شده ولی بهتر است چند دستور، در یک خط کد نوشته نشوند تا برنامه خواناتر و گویاتر باشد!
def fe():
e=[1,2,3,4,5,6,7,8,9,0]
f=['۱','۲','۳','۴','۵','۶','۷','۸','۹','۰']
a=input('.')
for b in a:
print(e[f.index(b)],end='')
fe()
fun farsiToEnglishNumbers() {
println("Write a line: ")
val inputText = readlnOrNull()
val translatedInputText = inputText?.map { character ->
when (character) {
'۰' -> '0'
'۱' -> '1'
'۲' -> '2'
'۳' -> '3'
'۴' -> '4'
'۵' -> '5'
'۶' -> '6'
'۷' -> '7'
'۸' -> '8'
'۹' -> '9'
else -> character
}
}?.joinToString("")
return println(translatedInputText)
}
fun main() {
farsiToEnglishNumbers()
}
برای استفاده از این بخش باید وارد حساب کاربریت بشی
ورود/ثبت نام