Viết chương trình tính tổng các phần tử lớn nhất của mỗi dòng. HẾT[r]
(1)PHÒNG GD- ĐT ĐỀ THI CHỌN ĐỘI THI HỌC SINH GIỎI TỈNH GIO LINH
MÔN : TIN HỌC
Thời gian 150 phút ( Không kể thời gian giao đề )
Ngày thi tháng 12 năm 2008 HỌC SINH THỰC HÀNH TRÊN MÁY TÍNH
Lưu làm vào thư mục D:\CHONHSG Ví dụ: D:\CHONHSG\BAI1
Câu 1:(3đ)
Cho mảng A số nguyên gồm n phần tử Viết chương trình tạo mảng B[1 n] Trong B[i] tổng giá trị i phần tử mảng A
Câu 2:(3đ)
Nhập vào xâu S (a z), in ký tự xuất nhiều lần xâu số lần xuất ? Nếu có nhiều trường hợp in trường hợp
Ví dụ:
Input Output
abcaabca a
bcbsaaba b
Câu 3:(4đ)
Cho mảng hai chiều số nguyên Viết chương trình tính tổng phần tử lớn dòng
HẾT
(2)ĐÁP ÁN Program Bai1;(3đ)
Uses Crt;
Const max = 100;
Var A,B:array[1 max] of Integer;i,j,n:integer; Begin
Write(' nhap vao so phan tu cua mang'); Readln(n); For i:= to n
Begin
Write('a[',i,']=');readln(a[i]); End;
For i:= to n Write(a[i]:5); For i:= 1to n Begin
B[i]:= ;
For j:=1 to i B[i]:=B[i]+a[j]; End;
For i:= to n Write(B[i]:5); Readln;
End.
Progaram bai2;(3đ) uses crt;
const max = 100;
var st:string; i,j,max:integer;ch:char; Begin
Write(' nhap vao xau ki tu'); readln(st); For ch:= 'a' to 'z' dem[ch]:=0; For i:= to length(st)
inc(dem[st[i]]); Max:= dem[st[1]];
For i:= to length(st)
if dem[st[i]]> max then max:=dem[st[i]]; i:=1;
While dem[st[i]]<>max begin
i:=i+1; end;
Writeln(' ki tu xuat hien nhieu nhat la:', st[i]); writeln(' so lan xuat hien:',max);
(3)End.
Progam Bai3;(4đ) Uses Crt;
Type Mang= Array[1 10,1 10] of Integer; Var A: Mang;
m,n,i,j,S,max:Integer; Begin
Write(' nhap vao so dong '); Readln(m); Write(' nhap vao so cot '); Readln(n); For i:= to m
For j:=1 to n Begin
Write('A[',i,j,']='); Readln(A[i,j]); End;
S:=0;
For i:= to m { Duyet qua tung dong} Begin
{ Tim phan tu lon nhat dong i } Max:=A[i,1];
For j:= to n { Duyet tung phan tu cua dong i} If max < A[i,j] then max: = A[i,j];
S:=S+max;
Writeln(' Tong cac phan tu lon nhat cua moi dong la:',S); Readln;