Di sini kita perlu menghitung jumlah angka yang ada dalam string dalam string kita dapat memiliki huruf dan juga beberapa digit sehingga kita perlu menemukan jumlah digitnya. Mari kita ambil satu contoh untuk dipahami
- Rangkaian masukan. - “4PREP2INSTAA6”
- Keluaran. - 12
Seperti pada string yang diberikan “4PREP2INSTAA6” jumlah karakter yang berupa angka adalah 4+2+6=12 maka outputnya adalah 12
Pertama kita dapat mengulangi melalui string dan memeriksa apakah karakter berada dalam kisaran '0' hingga '9' jika demikian, kita akan menambahkannya ke jumlah dan kemudian mencetak hasilnya
Menggunakan fungsi inbuilt kita dapat melakukan hal yang sama yaitu mengulangi seluruh string dan memeriksa apakah karakternya adalah angka atau tidak menggunakan fungsi isdigit()
Kita mulai dengan membagi angka menjadi digit dan kemudian menambahkan semua digit ke variabel penjumlahan. Untuk memecah string, kami menggunakan operator berikut
Operator modulo % digunakan untuk mengekstrak digit dari angka. Setelah menghapus angka, kami menerapkan operator bagi untuk mempersingkat angka
Berbagai Metode untuk Menemukan Jumlah Digit Angka dengan Python
Menggunakan str() dan int() metode
Untuk mengonversi angka menjadi string, gunakan fungsi str(). Untuk mengonversi angka string menjadi bilangan bulat, gunakan fungsi int()
Ubah angka menjadi string, ulangi setiap digit dalam string, dan tambahkan ke jumlah digit di setiap iterasi
Aliran Algoritma
Langkah 1. Kumpulkan masukan pengguna
Langkah 2. Buat variabel untuk menyimpan hasilnya
Langkah 3. Ubah angka menjadi string
Langkah 4. Tulis satu lingkaran untuk setiap digit dalam sebuah angka
Langkah 5. Ubah digit menjadi bilangan bulat dan tambahkan ke jumlahnya
Langkah 6. Jalankan fungsi dan cetak hasilnya
Kode
# Function to get sum of digits def getSum(n): sum = 0 for digit in str(n): sum += int(digit) return sum n = 569 print(getSum(n))
Keluaran
Menggunakan iterasi
Kami akan menggunakan loop untuk menghitung jumlah digit angka. Loop digunakan untuk mengeksekusi bagian kode tertentu secara terus menerus. Beberapa pernyataan perulangan adalah untuk perulangan, while, dan do-while
Untuk menemukan digit paling kanan dari suatu bilangan bulat, bagilah bilangan bulat tersebut dengan 10 hingga hasilnya sama dengan 0. Akhirnya, sisanya akan menjadi digit paling kanan. Gunakan sisa operator " persen " untuk menerima pengingat. Bagilah hasil bagi yang diperoleh dengan 10 untuk mendapatkan semua digit angka. Untuk menemukan hasil bagi angka, kami menggunakan "//"
Aliran Algoritma
Langkah 1. Buat fungsi untuk menemukan jumlah menggunakan parameter n
Langkah 2. Deklarasikan jumlah variabel untuk menyimpan jumlah digit
Langkah 3. Buat loop yang akan berjalan hingga n lebih besar dari nol
Langkah 4. Untuk sisa yang dikembalikan oleh, tambahkan jumlah variabel (n persen 10)
Langkah 5. Ubah n menjadi n/10
Langkah 6. Kumpulkan umpan balik dari pengguna
Langkah 7. Panggil fungsi yang didefinisikan sebelumnya dan berikan input sebagai argumen
Langkah 8. Cetak jumlah nilai yang dikembalikan oleh fungsi
Kode
# Function to get the sum of digits def getSum(n): sum = 0 while (n != 0): sum = sum + (n % 10) n = n//10 return sum n = 569 print(getSum(n)) _
Keluaran
Menggunakan Rekursi
Rekursi adalah proses mendefinisikan masalah atau solusi untuk masalah dalam versi yang lebih sederhana dari dirinya sendiri. Fungsi yang sesuai disebut fungsi rekursif. Penggunaan rekursi menghilangkan kebutuhan untuk loop dalam pemrograman
Ikuti algoritme untuk deskripsi menyeluruh tentang cara kerja perangkat lunak
Aliran Algoritma
Langkah 1. Buat fungsi untuk menemukan jumlah digit dengan parameter n untuk menghitung jumlah tersebut
Langkah 2. Tentukan apakah n kurang dari 10;
Langkah 3. Jika tidak, bagi angkanya dengan 10 dan temukan sisa (n persen 10)
Langkah 4. Memanggil fungsi secara rekursif dan meneruskan (n/10) sebagai parameter
Langkah 5. Tambahkan sisa dan nilai yang dikembalikan oleh fungsi
Langkah 6. Kumpulkan input pengguna
Langkah 7. Memanggil fungsi jumlah digit untuk menemukan jumlah digit angka, meneruskan input sebagai parameter
Kode
# sum of digits in number. def sumDigits(no): return 0 if no == 0 else int(no % 10) + sumDigits(int(no / 10)) # Driver code n = 569 print(sumDigits(n))
Keluaran
Menggunakan metode Sum()
Metode sum() digunakan untuk menghitung jumlah digit angka dalam python dalam daftar
Ubah angka menjadi string menggunakan str(), lalu cabut string dan ubah menjadi daftar angka dengan metode strip() dan map(), masing-masing. Kemudian, hitung totalnya menggunakan metode sum()
Aliran Algoritma
Langkah 1. Buat fungsi untuk menemukan jumlah digit dengan parameter n untuk menghitung jumlah tersebut
Langkah 2. Angka tersebut diubah menjadi string melalui metode str()
Langkah 3. Kemudian, string digariskan dan diubah menjadi digit daftar dari nomor yang diberikan masing-masing melalui metode strip() dan map()
Bagaimana Anda menemukan jumlah digit dalam string?
Ganti setiap grup s dengan string yang mewakili jumlah semua digitnya. Misalnya, "346" diganti dengan "13" karena 3 + 4 + 6 = 13. Gabungkan grup yang berurutan untuk membentuk string baru. Jika panjang string lebih besar dari k , ulangi dari langkah 1Bisakah Anda menggunakan jumlah pada string python?
Anda dapat menjumlahkan dua string menggunakan + untuk menggabungkannya . Jadi masuk akal untuk mendefinisikan jumlah sebagai gabungan untuk string seperti halnya untuk daftar.