Trang chủ Tin Học Lớp 8 Bài 1. Một chữ số Hãy cộng tất cả các...

Bài 1. Một chữ số Hãy cộng tất cả các chữ sốcủa một số nguyên dương N cho trước. Nếu kết quảlà sốcó 1 chữsốthì kết thúc, ngược lại tiếp tục cộng các chữ số c

Câu hỏi :

Bài 1. Một chữ số Hãy cộng tất cả các chữ sốcủa một số nguyên dương N cho trước. Nếu kết quảlà sốcó 1 chữsốthì kết thúc, ngược lại tiếp tục cộng các chữ số của tổng nhận được cho đến khi kết quả là số chỉ có 1 chữsố.Ví dụ: Với N = 1234567 → Tổng các chữ số là 1+2+3+4+5+6+7=28 → Quá tình tiếp tục 2+8=10 → Quá trình tiếp tục 1+0=1. Dừng. Yêu cầu: Dữliệu vào là tệp ONEDIGIT.INPgồm một sốN duy nhất.Dữliệu ra là tệp ONEDIGIT.OUT gồm mộ t số duy nhất là kết quả tìm được

Lời giải 1 :

uses crt;
var n:string; d:text; i,tong,a,e:longint;
begin
clrscr;
   assign(d,'ONEDIGHT.INP');reset(d);
      readln(d,n);
   close(d);
   assign(d,'ONEDIGHT.OUT');rewrite(d);
      repeat
         tong:=0;
         for i:=1 to length(n) do
            begin
               val(n[i],a,e);
               inc(tong,a);
            end;
         str(tong,n);
      until length(n)=1;
      writeln(d,n);
   close(d);
end.

Giải thích:

Khi mới vào mình đọc n là xâu luôn để tiện tính tổng nhé

Chạy cho đến khi còn 1 chữ số:

Cộng các chữ số:

-Mình dùng hàm val(đổi từ xâu ra số).

-Cộng các số đó lại(ta có tổng các chũ số của n);

Ta chuyển tổng ra xâu lại với hàm str(ngược lại với val) để lầm sau có thể thực hiện tiếp.

Nếu có gì không hiểu hay code có chỗ nào chưa hợp lí thì các bạn hãy để lại bình lận nhé

!!! :))))

Mình có một số text cho các bạn tham khảo:

image
image
image

Thảo luận

-- Bài của bạn có sai nhiều chỗ
-- bài trong link hả bn
-- uk
-- sai ở đâu ạ
-- Mình co bình luận ở bài bạn rồi nhé
-- link này nè bn, nãy m nhầm https://hoidap247.com/cau-hoi/986782
-- Bài làm rất hay, rất hoàn chỉnh. Xứng đáng !
-- Ok thanks

Lời giải 2 :

#include<bits/stdc++.h>
using namespace std;
int tongchuso(int so){
    int soTemp;
    int tong = 0;
    soTemp = so;
    while (soTemp != 0) {
        tong += soTemp % 10;
        soTemp /= 10;
    }
    return tong;
}
int main()
{
    int n;
    cin>>n;
    while(n>=10){
        n=tongchuso(n);
    }
    cout<<n;
    //samon247
    return 0;
}

Bạn có biết?

Tin học, tiếng Anh: informatics, tiếng Pháp: informatique, 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 (ảo). Với cách hiểu hiện nay, 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.

Nguồn : Wikipedia - Bách khoa toàn thư

Tâm sự 8

Lớp 8 - Năm thứ ba ở cấp trung học cơ sở, học tập bắt đầu nặng dần, sang năm lại là năm cuối cấp áp lực lớn dần nhưng các em vẫn phải chú ý sức khỏe nhé!

Nguồn : ADMIN :))

Copyright © 2021 HOCTAP247