LH Quảng cáo: lazijsc@gmail.com

Bài tập  /  Bài đang cần trả lời

Nâng cao kĩ năng sử dụng một số câu lệnh và một số kiểu dữ liệu thông qua việc tìm hiểu, chạy thử các chương trình có sẵn

1 trả lời
Hỏi chi tiết
707
0
0
Nguyễn Thị Sen
08/09/2017 00:11:57
1. Mục đích, yêu cầu
- Nâng cao kĩ năng sử dụng một số câu lệnh và một số kiểu dữ liệu thông qua việc tìm hiểu, chạy thử các chương trình có sẵn.
- Biết giải một số bài toán tính toán, tìm kiếm đơn giản trên máy tính.
2. Nội dung
Bài 1. Tạo mảng A gồm n (n<100) số nguyên, mỗi số có giá trị tuyệt đối không vượt quá 300. Tính tổng các phần tử của mảng là hội số của một số nguyên dương k cho trước.
a) Hãy tìm hiểu và chạy thử chương trình sau đây:
program Sum1;
uses crt;
const nmax=100;
type MyArray= array[1..nmax] of integer;
var A: MyArray;
s, n, i, k: integer;
Begin
clrscr;
randomize; write('Nhap n= ’);
readln(n); {Tao ngau nhien mang gom n so nguyen]}
for i:= 1 to n do A[i] := random(301)-random(301) ;
for i:=l to n do write (A[i] :5) ; {in ra mang vua tao}
writeln;
write('Nhap k = ');
readln(k);s: =0;
for i:= 1 to n do
if A[i] mod k = 0 then s:= s+ A[i];
writeln('Tong can tinh la: ', s);
readln
end.
Chú ý: Hàm chuẩn random(rt) cho giá trị là sổ nguyên ngẫu nhiên trong khoảng từ 0 đến n-1, còn thủ tục randomize khởi tạo cơ chế sinh số ngẫu nhiên.
b) Hãy đưa các câu lệnh sau đây vào những vị trí cần thiết nhằm sửa đổi chương trình trong câu a) để có được chương trình đưa ra các sổ dương và các số âm trong mảng.
posi, neg: integer;
posi:= 0; neg:= 0;
if A[i]>0 then posi:= posi + 1
else if A[i}
Bài 2: Viết chương trình tìm phần tử có giá trị lớn nhất của mảng và đưa ra màn hình chỉ số và giá trị của phần tử tìm được. Nếu có nhiều phần tử có cùng; giá trị lớn nhất thì đưa ra màn hình có chỉ số nhỏ nhất,
a) Hãy tìm hiểu chương trình sau đây:
Program MaxElement;
const Nmax= 100;
type Myarray = array[1..Nmax] of integer;

var A: MyArray;
n, i, j: integer;
Begin
write ('Nhap so luong phan tu cua day so, N= ') ;
readln(N); for i:= 1 to N do
begin
write ('Phan tu thu ', i,' = ')
readln(A[i]);
end;
for i:= 1 to n do if A[i]>A[j] then j:= i;
write('Chi so: ',j,' Gia tri: ',A[j]: 4);
readln
End.
b) Chỉnh sửa chương trình trên để đưa ra chỉ số của các phần tử có cùng giá trị lớn nhất.

Mở khóa để xem toàn bộ nội dung trả lời

(?)
Bạn đã đạt đến giới hạn của mình. Bằng cách Đăng ký tài khoản, bạn có thể xem toàn bộ nội dung trả lời
Cải thiện điểm số của bạn bằng cách đăng ký tài khoản Lazi.
Xem toàn bộ các câu trả lời, chat trực tiếp 1:1 với đội ngũ Gia sư Lazi bằng cách Đăng nhập tài khoản ngay bây giờ
Tôi đã có tài khoản? Đăng nhập

Bạn hỏi - Lazi trả lời

Bạn muốn biết điều gì?

GỬI CÂU HỎI
Học tập không giới hạn cùng học sinh cả nước và AI, sôi động, tích cực, trải nghiệm
Bài tập liên quan
Bài tập Tin học Lớp 11 mới nhất

Hôm nay bạn thế nào? Hãy nhấp vào một lựa chọn, nếu may mắn bạn sẽ được tặng 50.000 xu từ Lazi

Vui Buồn Bình thường

Học ngoại ngữ với Flashcard

×
Trợ lý ảo Trợ lý ảo
×
Gia sư Lazi Gia sư