Trang chủ Tin Học Lớp 12 Nén số Tên file: NENSO.*** Ta gọi phép nén một số nguyên là tính tổng các chữ số của nó....
Câu hỏi :

Nén số Tên file: NENSO.*** Ta gọi phép nén một số nguyên là tính tổng các chữ số của nó. Dễ thấy, sau một số phép nén, thì số còn lại chỉ có một chữ số và ko nén được nữa. Ta gọi số đó là số nén tối giản. Ví dụ cho số 86. Sau phép nén thứ nhất ta đk: 8+6=14. Sau phép nén thứ 2: 1+4=5 => Số nén tối giản của 86 là 5. Cho một số nguyên hãy tìm số nén tối giản của nó. Input: Chứa số nguyên dương N Output: Số nén tối giản tương ứng của N Ví dụ INPUT OUTPUT 111 3 57871 1

Lời giải 1 :

Ta có thể giải bài toán này bằng cách gọi đệ quy cho đến khi n còn 1 chữ số.

Ta cần 2 hàm đệ quy:

`**` Hàm tính tổng các chữ số: Hàm này dùng để tính tổng chữ số của một số.

`**` Hàm nén: Hàm này dùng để nén một số.

$\\$
Code tham khảo:

#include <iostream>

#define ll long long

using namespace std;

ll calc(ll n) {
  if (n) return calc(n / 10) + n % 10;
  return 0;
}

ll nen(ll n) {
  if (n < 10) return n;
  return nen(calc(n));
}

int main() {
  ll n; cin >> n;
  cout << nen(n);
}

$\\$
$\\$
\begin{array}{c|c|c}\color{#ffd710}{\texttt{\{}} \color{#8655d6}{\texttt{\{}}\ \ \color{#8cdcda}{\text{Daoanhviet96}}\ \ \color{#8655d6}{\texttt{\}}} \color{#ffd710}{\texttt{\}}}\end{array}

image

Lời giải 2 :

#include <bits/stdc++.h>

using namespace std;

int main()
{
    int n;
    cin >> n;
    while (n >= 10)
    {
        int sum = 0;
        while (n != 0)
        {
            sum += n % 10;
            n /= 10;
        }
        n = sum;
    }
    cout << n;
}

Bạn có biết?

Tin học là một ngành khoa học chuyên nghiên cứu quá trình tự động hóa việc tổ chức, lưu trữ, xử lý và truyền dẫn thông tin của một hệ thống máy tính cụ thể hoặc trừu tượng. Tin học bao hàm tất cả các nghiên cứu và kỹ thuật có liên quan đến việc mô phỏng, biến đổi và tái tạo thông tin. Hãy tận dụng sức mạnh của tin học để giải quyết các vấn đề và sáng tạo ra những giải pháp mới!

Nguồn :

Wikipedia - Bách khoa toàn thư

Tâm sự lớp 12

Lớp 12 - Năm cuối ở cấp trung học phổ thông, năm học quan trọng nhất trong đời học sinh, trải qua bao năm học tập, bao nhiêu kỳ vọng của người thân xung quanh. Những nỗi lo về thi đại học và định hướng tương lai thật là nặng nề. Hãy tin vào bản thân, mình sẽ làm được và tương lai mới đang chờ đợi chúng ta!

Nguồn :

sưu tập

Copyright © 2024 Giai BT SGK