Đề thi học sinh giỏi tin học tỉnh Quảng Bình 2011

P

pe_kid_55

[TẶNG BẠN] TRỌN BỘ Bí kíp học tốt 08 môn
Chắc suất Đại học top - Giữ chỗ ngay!!

ĐĂNG BÀI NGAY để cùng trao đổi với các thành viên siêu nhiệt tình & dễ thương trên diễn đàn.

Lỗ hổng chữ số

Các chữ số từ 0 đến 9, nếu một chữ số bất kỳ có một đường khép kín thì ta gọi chữ số đó có 1 lỗ hổng, có hai đường khép kín thì ta gọi số đó có 2 lỗ hổng, và không có đường khép kín nào thì ta gọi chữ số đó có 0 lỗ hổng. Vậy các chữ số 0, 4, 6, 9 có 1 lỗ hổng, chữ số 8 có 2 lỗ hổng và các chữ số 1, 2, 3, 5, 7 có 0 lỗ hổng.
Cho một số nguyên dương N (1 ≤ N ≤ 2147483647), ta luôn đếm được số lỗ hổng của các chữ số xuất hiện trong nó.
Ví dụ: Với N = 388247 thì ta đếm được N có 5 lỗ hổng.
Yêu cầu: Đếm số lỗ hổng của số nguyên dương N.
Dữ liệu vào: Nhập số nguyên dương N từ bàn phím.
Dữ liệu ra: In số lỗ hổng của số nguyên dương N ra màn hình.
Ví dụ: Nhập vào từ bàn phím N = 388247
Kết quả in ra màn hình: 5
 
O

ochuotqb

mà đây là đề thì lớp mấy hèm..................................................... có cần sử dụng phần mảng ko??
 
Last edited by a moderator:
P

pe_kid_55

Đây là đề HSG 9....................M"nh can giup' bai` nay` mà sao bạn lại hỏi ngược lại mình là có sử dụng mảng không?
 
O

ochuotqb

hớ.. mình tưởng lớp 8......................... èo... mình chưa học mảng nữa...... nên không giúp gì được...............
 
T

thanks_to_you

Cách dễ nhất đây:
PHP:
str(n, s);
d:=0;
For i:= 1 To Length(s) Do
    If s[i]='0' or s[i]='4' or s[i]='6' or s[i]='9' Then
        d:=d+1
    Else
        If s[i]='8' Then
            d:=d+2;
 
D

duynhan1

Lỗ hổng chữ số

Các chữ số từ 0 đến 9, nếu một chữ số bất kỳ có một đường khép kín thì ta gọi chữ số đó có 1 lỗ hổng, có hai đường khép kín thì ta gọi số đó có 2 lỗ hổng, và không có đường khép kín nào thì ta gọi chữ số đó có 0 lỗ hổng. Vậy các chữ số 0, 4, 6, 9 có 1 lỗ hổng, chữ số 8 có 2 lỗ hổng và các chữ số 1, 2, 3, 5, 7 có 0 lỗ hổng.
Cho một số nguyên dương N (1 ≤ N ≤ 2147483647), ta luôn đếm được số lỗ hổng của các chữ số xuất hiện trong nó.
Ví dụ: Với N = 388247 thì ta đếm được N có 5 lỗ hổng.
Yêu cầu: Đếm số lỗ hổng của số nguyên dương N.
Dữ liệu vào: Nhập số nguyên dương N từ bàn phím.
Dữ liệu ra: In số lỗ hổng của số nguyên dương N ra màn hình.
Ví dụ: Nhập vào từ bàn phím N = 388247
Kết quả in ra màn hình: 5
Mã:
Const A=array['0'..'9'] of byte =(1,0,0,0,1,0,1,0,2,1);
Var n,i,dem:longint;
       s:string;
Begin
Readln(n);
Str(n,s);
dem:=0;
For i:=1 to length(s) do dem:=dem+A[s[i]];
Writeln(dem);
Readln;
End.
 
Top Bottom