Hỏi đáp Tin học lớp 8

Người hay giúp bạn khác trả lời bài tập sẽ trở thành học sinh giỏi. Người hay hỏi bài thì không. Còn bạn thì sao?

1/Viết chương trình nhập m, n từ bàn phím (m<n).Tính tổng các số chia hết cho 3?

2/Viết chương trình nhập m, n từ bàn phím (m<n).Tính tổng các số chia hết cho 3 và 5?

3/Nhập vào hai số nguyên dương m từ bàn phím. Viết chương trình tính tổng S sau:

S=1^2+2^2+3^2+4^2+...m^2

4/Một người gửi tiết kiệm 100 đồng. Hỏi sau 12 tháng anh ta sẽ thu được số tiền la bao nhiêu?Biết lãi suất mỗi tháng của ngân hàng là 0.15%.

5/Một giáo viên vào lớp và phát kẹo cho các em học sinh theo qui tắt sau: em đầu tiên được nhận 1 viên kẹo, em tiếp theo nhận số kẹo nhiều hơn em trước đó 3 viên. Hỏi nếu lớp học có 20 học sinh thì tổng số kẹo phải có để giáo viên phát đủ cho cả lớp.

6/tính tổng số đồng tiền được thả vào bàn cờ biết:

+bàn cờ có 64 ô.

+ô đầu tiên, ta thả vào 1 đồng tiền.

+các ô còn lại , ta thả đồng tiền vào theo qui ước ô tiếp theo có dố lượng đồng tiền gấp đôi ô trước đó.

6/Một người tiết kiệm 1000 đồng hỏi bao nhiêu tháng thì anh ta thu được số tiền la 150 đồng?biết lãi suất của ngân hàng là 0.15%

7/"vừa gà vừa chó

bó lại cho tròn

ba mươi sáu con.

một trăn chân chẵn."

hỏi:có bao nhiêu gà và bao nhiêu chó.

1 câu trả lời

Nhập vào một dãy n số nguyên A[1],A[2],...,A[n] . Đọc ra màn hình các thông tin sau :

  1. Tổng các phần tử của dãy.
  2. Số lượng các số hạng dương và tổng của các số hạng dương.
  3. Số lượng các số hạng âm và tổng của các số hạng âm.
  4. Trung bình cộng của cả dãy. Trung bình cộng các phần tử dương của mảng. Trung bình cộng các phần tử âm của mảng.
  5. Chỉ số của số hạng dương đầu tiên của dãy.
  6. Chỉ số của số hạng âm đầu tiên của dãy.
  7. Chỉ số của số hạng dương cuối cùng của dãy.
  8. Chỉ số của số hạng âm cuối cùng của dãy.
  9. Số hạng lớn nhất của dãy và chỉ số của nó.
  10. Số hạng nhỏ nhất của dãy và chỉ số của nó.
  11. Số hạng âm lớn nhất của dãy và chỉ số của nó.
  12. Số hạng dương nhỏ nhất của dãy và chỉ số của nó.
  13. Giá trị lớn thứ nhì của dãy và các chỉ số của các số hạng đạt giá trị lớn nhì.
  14. Giá trị nhỏ thứ nhì của dãy và các chỉ số của các số hạng đạt giá trị nhỏ nhì.
  15. Số lượng các số dương liên tiếp nhiều nhất.
  16. Số lượng các số hạng dương liên tiếp có tổng lớn nhất.
  17. Số lượng các số hạng âm liên tiếp nhiều nhất.
  18. Số lượng các số hạng âm liên tiếp có tổng lớn nhất.
  19. Số lượng các số hạng liên tiếp đan dấu nhiều nhất ( dãy số hạng liên tiếp được gọi là đan dấu nếu tích hai số liên tiếp âm ).
  20. Số lượng các phần tử không tăng nhiều nhất.
  21. Số lượng các phần tử giảm nhiều nhất.
  22. Số lượng các phần tử tăng nhiều nhất.
  23. Đoạn con dương liên tiếp có nhiều các số hạng nhất (nếu có nhiều đoạn con thoả mãn thì đọc ra màn hình : số đoạn con thoả mãn và các đoạn con đó )
  24. Đoạn con gồm nhiều nhất các số hạng liên tiếp của dãy lập thành một cấp số cộng. nhất (nếu có nhiều đoạn con thoả mãn thì đọc ra màn hình : số đoạn con thoả mãn và các đoạn con đó )
  25. Đoạn con có các số hạng dương liên tiếp có tổng lớn nhất. nhất (nếu có nhiều đoạn con thoả mãn thì đọc ra màn hình : số đoạn con thoả mãn và các đoạn con đó )
  26. Đoạn con có các số hạng âm liên tiếp nhiều nhất. nhất (nếu có nhiều đoạn con thoả mãn thì đọc ra màn hình : số đoạn con thoả mãn và các đoạn con đó )
  27. Đoạn con có số hạng âm liên tiếp có tổng lớn nhất. nhất (nếu có nhiều đoạn con thoả mãn thì đọc ra màn hình : số đoạn con thoả mãn và các đoạn con đó )
  28. Đoạn con có các số hạng liên tiếp đan dấu nhiều nhất nhất (nếu có nhiều đoạn con thoả mãn thì đọc ra màn hình : số đoạn con thoả mãn và các đoạn con đó )
  29. Đoạn con có các phần tử không tăng nhiều nhất. nhất (nếu có nhiều đoạn con thoả mãn thì đọc ra màn hình : số đoạn con thoả mãn và các đoạn con đó )
  30. Đoạn con có các phần tử giảm nhiều nhất. nhất (nếu có nhiều đoạn con thoả mãn thì đọc ra màn hình : số đoạn con thoả mãn và các đoạn con đó )
  31. Số lượng các phần tử bằng giá trị X ( nguyên ) cho trước.
  32. Số lượng các phần tử khác giá trị X ( nguyên ) cho trước.
  33. Số lượng các phần tử >= giá trị X ( nguyên ) cho trước.
  34. Chuyển các số hạng dương của mảng lên đầu mảng và in mảng ra màn hình.
  35. Tìm số phần tử là dương và là số nguyên tố của mảng và vị trí của nó trong mảng
  36. Sắp xếp tăng dần mảng đã cho (a[i]<=a[i+1] )
  37. Sắp xếp giảm dần mảng đã cho (a[i]>=a[i+1] )
  38. Chèn một số nguyên m (m nhập vào từ bàn phím ) vào cuối dãy
  39. Chèn một số nguyên m (m nhập vào từ bàn phím ) vào đầu dãy
  40. Chèn một số nguyên m ( m nhập vào từ bàn phím ) vào vị trí k .
  41. Chèn một số nguyên m ( m nhập vào từ bàn phím ) vào vị trí thích hợp .
1 câu trả lời

THÔNG BÁO MỞ VÒNG 3 CUỘC THI TIN HỌC

+ Link dự thi vòng 3: Vòng 3 | Học trực tuyến

+ Lưu ý :

- Thí sinh tham gia làm bài thi phải giữ bài cá nhân , không chia sẽ hay cấu kết với nhau

- Nếu phát hiện thí sinh nào hỏi bài từ các trang web khác sẽ bị hủy bài

- Thí sinh có bài làm hoàn toàn giống nhau sẽ bị chia 3 số điểm

- Thời gian kết thúc : 23:59:59 28/07/2019

- Sau thời gian kết thúc điểm và giải thưởng sẽ được công bố

4 câu trả lời

ĐÁP ÁN VÒNG 2 CUỘC THI TIN HỌC:

* ĐỀ 1:

Câu 1:

CÂU 1:
const fi='uc.inp';
fo='uc.out';
var f: text;
a,b,c : integer;
function uc(x,y): integer;
var z: integer;
begin
while y<>0 do
begin
z:=x mod y;
x:=y;
y:=z;
end;
uc:=x;
end;
procedure ip;
begin
assign(f,fi);
reset(f);
read(f,a,b,c);
close(f);
end;
procedure out;
begin
assign(f,fo);
rewrite(f);
write(f,uc(uc(a,b),c);
close(f);
end;
begin
ip;
out;
end.

Câu 2:

const fi='SN.inp';
fo='SN.out';
var
f:text;
i,n:integer;
s:real;
procedure ip;
begin
assign(f,fi);
reset(f);
read(f,n);
close(f);
end;
procedure out;
begin
assign(f,fo);
rewrite(f);
s:=0;
for i:= 1 to n do
begin
if i mod 2 <> 0 then
s:=s+(i/(i+1));
if i mod 2 = 0 then
s:=s-(i/(i+1));
end;
write(f,s:0:2);
close(f);
end;
BEGIN
ip;
out;
END.

Câu 3:

const fi='SSNT.inp';
fo='SSNT.out';
var
f:text;
n,i,max,j:integer;
s:string;
a:array[1..32000] of integer;
function nt(x:integer):boolean;
var
i:integer;
begin
nt:=false;
if x < 2 then exit;
for i:= 2 to trunc(sqrt(x)) do
if x mod i = 0 then exit;
nt:=true;
end;
function snt(x:integer):boolean;
begin
snt:=false;
if x= 0 then exit;
while nt(x) = true do
x := x div 10;
if x = 0 then snt:=true;
end;
procedure ip;
begin
assign(f,fi);
reset(f);
max:=a[1];
readln(f,n);
for i:= 1 to n do
begin
read(f,a[i]);
if( a[i] < max ) and (nt(a[i]) = true) then
max:=a[i];
end;
close(f);
end;
procedure out;
begin
assign(f,fo);
rewrite(f);
writeln(f,max);
max:=0;
for i:= 1 to n do
begin
if snt(a[i]) = true then
begin
str(a[i],s);
if length(s) = 2 then
max:=max+a[i];
s:='';
end
else
a[i]:=-32000;
end;
writeln(f,max);
for i:= 1 to n-1 do
for j :=i+1 to n do
if a[i] > a[j] then
begin
max:=a[i];
a[i]:=a[j];
a[j]:=max;
end;
for i:= 1 to n do
if (a[i] > 0) and (a[i] <> a[i-1]) then write(f,a[i],' ');
close(f);
end;
BEGIN
ip;
out;
END.

CÂU 4:

const fi='TUOI.INP';
fo='TUOI.OUT';
var f: text;
a,b: byte;
procedure ip;
begin
assign(f,fi);
reset(f);
read(f,a,b);
close(f);
end;
procedure out;
begin
assign(f,fo);
rewrite(f);
if (x=y*2) and (x>18) and (x-y>=18) then write(f,'CO') else write(f,x-y*2);
close(f);
end;
begin
ip;
out;
end.

const fi='CM.INP';

fo='CM.OUT';

var f: text;

a,n,b,k: integer;

a1: array[1..32000] of integer;

function nt(x: integer): boolean;

var i: integer;

begin

nt:=false;

if x<2 then exit;

for i:=2 to trunc(sqrt(x)) do if x mod i=0 then exit;

nt:=true;

end;

procedure ip;

begin

assign(f,fi);

reset(f);

read(f,n);

close(f);

end;

procedure out;

begin

assign(f,fo);

rewrite(f);

d:=0;

for a:=1 to k do

if nt(a) then

begin

inc(d);

a1[d]:=a;

end;

for a:=1 to d do

for b:=x to d do

if a1[a]+a1[b]=k then writeln(f,a1[a],'+',a1[b]);

end;

close(f);

end;

begin

ip;

out;

end.

*ĐỀ 2 :

BÀI LÀM CỦA BẠN LÊ HOÀNG THẮNG:

//----------------------------CAU 1--------------------------------

var s,d,n,i,u:longint;
a:array[0..32001] of longint;
f:text;
function ucln(x,y:longint):longint;
begin
if y=0 then exit(x) else exit(ucln(y,x mod y));
end;
begin
assign(f,'ucln.inp');reset(f);
readln(f,n);
for i:=1 to n do read(f,a[i]); close(f);
u:=a[1];
for i:=2 to n do u:=ucln(u,a[i]);
assign(f,'ucln.out');rewrite(f);
write(f,'UCLN: ',u,'; UC: ');
for i:=1 to u do if u mod i=0 then
begin
if i<>u then write(f,i,',') else write(f,i);
if i<10 then inc(d) else inc(s,i);
end;
writeln(f);
writeln(f,d); write(f,s);
close(f);
end.

//----------------------------CAU 2--------------------------------

var n,i:longint;
s:real;
f:text;
begin
assign(f,'sn.inp');reset(f);
readln(f,n); close(f);
for i:=1 to n do if odd(i) then s:=s-i/(i+1) else s:=s+i/(i+1);
assign(f,'sn.out');rewrite(f);
write(f,s:0:2);
close(f);
end.

//----------------------------CAU 3--------------------------------

var a:array[0..1000000] of boolean;
b:array[0..1000000] of longint;
i,j,k,n,d:longint;
f:text;
procedure taosang(n:longint);
var i,j:longint;
begin
for i:=2 to trunc(sqrt(n)) do if not(a[i]) then
begin
j:=i*i;
while j<=n do begin a[j]:=true; inc(j,i); end;
end;
end;
begin
assign(f,'boso.inp');reset(f);
readln(f,n); taosang(n); close(f);
assign(f,'boso.out');rewrite(f);
for i:=2 to n do if not(a[i]) then
begin
inc(d);
b[d]:=i;
end;
for i:=1 to d do
for j:=i to d do
if (n-b[i]-b[j]>=b[j]) and not(a[n-b[i]-b[j]]) then
writeln(f,b[i],' ',b[j],' ',n-b[i]-b[j]);
close(f);
end.

//----------------------------CAU 4--------------------------------

THAM KHẢO ĐỀ 1.

//----------------------------CAU 5--------------------------------

var n,i,s,t:longint;
f:text;
begin
assign(f,'u.inp');reset(f);
readln(f,n); t:=n; close(f);
assign(f,'u.out');rewrite(f);
for i:=2 to trunc(sqrt(n)) do
begin
if n mod i=0 then
begin
write(f,i,' ');
repeat n:=n div i until n mod i>0;
end;
if t mod (i*i)=0 then inc(s,i*i);
end;
writeln(f);
write(f,s+1);
close(f);
end.

*ĐỀ CHUNG:

BÀI LÀM CỦA BẠN ĐÀO XUÂN SƠN :

Câu 1:

const fi='TCS.inp';
fo='TCS.out';
var
f:text;
x:char;
tg:byte;
s:integer;
CODE:integer;
procedure ip;
begin
assign(f,fi);
reset(f);
s:=0;
while not(eof(f)) do
begin
read(f,x);
if x in ['0'..'9'] then
begin
val(x,tg,CODE);
s:=s+tg;
end;
end;
close(f);
end;
procedure out;
begin
assign(f,fo);
rewrite(f);
write(f,s);
close(f);
end;
BEGIN
ip;
out;
END.

Câu 2:

const fi='t.inp';
fo='t.out';
var
f:text;
s:string;
i:byte;
procedure ip;
begin
assign(f,fi);
reset(f);
read(f,s);
close(f);
end;
procedure out;
begin
assign(f,fo);
rewrite(f);
s[1]:=upcase(s[1]);
for i:= 2 to length(s) do
if s[i-1] <> #32 then
s[i]:=lowercase(s[i]) else
s[i]:=upcase(s[i]);
write(f,s);
close(f);
end;
BEGIN
ip;
out;
END.

0 câu trả lời

THÔNG BÁO KẾT THÚC VÒNG 2 CUỘC THI TIN HỌC

- Như vậy sau 1 tuần tranh đấu thì vòng 2 đã kết thúc và chúng ta đã biết 6 cái tên sẽ có mặt ở vòng 3

STT Tên Điểm Ghi chú
1 Lê Hoàng Thắng 19.25
2 Đoàn Xuân Sơn 19
3 bảo nam trần 19
4 Luân Đào 18.25
5 katou kid 17.75
6 Nguyễn Trung Hiếu 9.75

Bạn Nguyen Hoang Quan chưa có bài làm để tổng kết nên sẽ không có mặt ở vòng 3

+ Dự kiện vòng 3:

- Thời gian mở : 24/07/2019

- Thời gian kết thúc : 28/07/2019

- Chấm điểm một lượt vào ngày 29/07/2019

- Ở vòng 3 chấm điểm sẽ theo thứ tự bài làm tối ưu và không tối ưu

- Vòng thi này chỉ có thời gian là 4 ngày nên các bạn phải hoàn thành bài thi sớm , bài làm quá hạn sẽ không nhận

- Vòng 3 sẽ không có điểm ưu tiên và đề thi là chung 1 đề để có công bằng đối với các thí sinh

+ Mỗi bạn có mặt ở vòng 3 sẽ được cộng 5GP

Một lần nữa cảm ơn các bạn đã tham gia và ủng hộ cuộc thi vui.

2 câu trả lời
Click để xem thêm, còn nhiều lắm! Gửi câu hỏi

...

Dưới đây là những câu hỏi có bài toán hay do Hoc24 lựa chọn.

Building.