Viết chương trình thao tác trên mảng 2 chiều với các công việc sau

Viết chương trình thao tác trên mảng 2 chiều với các công việc sau

+ Nhập xuất mảng 2 chiều.

+ Đếm số lần xuất hiện giá trị 0 trong mảng.

+ Tìm giá trị lớn nhất trong mảng 2 chiều đã nhập vào.

Hướng dẫn:

+ Khai báo kiểu dữ liệu mảng 2 chiều.

Type   Mang2C = Array[1..10, 1..10] of Real;

+ Xây dựng thủ tục nhập dữ liệu cho mảng 2 chiều A với kích thước MxN. Lưu ý: các tham số: A (tên mảng), M, N (kích thước của mảng) đều được truyền theo dạng tham biến để lưu lại giá trị đã nhập sau khi thoát khỏi thủ tục.

Quá trình nhập dữ liệu cho mảng A, được thực hiện nhờ 2 vòng lặp lồng nhau: vòng lặp i, lặp cho chỉ số dòng; vòng lặp j, lặp cho chỉ số cột. Tại mỗi bước lặp, tiến hành đọc giá trị cho phần tử A[i,j].

+ Xây dựng thủ tục xuất dữ liệu mảng. Sử dụng 2 vòng lặp lồng nhau: vòng lặp i, lặp cho chỉ số dòng; vòng lặp j, lặp cho chỉ số cột. Tại mỗi bước lặp, tiến hành xuất giá trị A[i,j]. Tại cuối mỗi bước lặp dòng, tiến hành xuống dòng sau khi đã in các phần tử.

+ Quá trình đếm phần tử 0 trong mảng cũng như tìm giá trị lớn nhất trong mảng làg quá trình duyệt qua tất cả các phần tử A[i,j].

Sử dụng 2 vòng lặp lồng nhau: vòng lặp i cho chỉ số dòng; vòng lặp j cho chỉ số cột. Tại mỗi bước lặp, tiến hành kiểm tra giá trị A[i,j] và thực hiện thao tác tùy theo yêu cầu của bài toán: Đếm hay So sánh và tìm Max.

Source code chương trình

PROGRAM Mang_2C;

Uses CRT;

Type   Mang2C = Array[1..10, 1..10] of Real;

Var     A: Array2C;

            N, M: Integer;

{ 1. Thu tục nhap mang 2 chieu }

Procedure NhapMang2C( Var A : Mang2C; Var M,N : Integer);

Var     i, j: Integer;

Begin

Repeat

Write(‘Nhap so hang N, so cot M: ‘);

Readln(N, M);

      Until ( N>0 ) and ( N<11 ) and ( M>0 ) and ( M<11 );

      For i:=1 to M do

For j:=1 to N do

Begin

Write(‘Nhập A[‘, i, ‘,’, j , ‘]: ‘);

Readln(A[i,j]);

End;

End;

{ 2. Thu tục xuat mang 2 chieu }

Procedure XuatMang2C( A : Mang2C; M,N : Integer);

Var     i, j: Integer;

Begin

      For i:=1 to M do

      Begin

For j:=1 to N do

Write(A[i, j],’  ‘);

Writeln;

End;

End;

{ 3. Ham dem so phan tu 0 co trong mang 2 chieu }

Function DemPtu0( A : Mang2C; M,N : Integer) : Integer;

Var     i, j, Dem: Integer;

Begin

      Dem := 0;

      For i:=1 to M do

For j:=1 to N do

If (A[i, j] = 0) Then  inc(Dem);

DemPtu0 := Dem;

End;


{ 4. Ham tim gia tri Max trong mang 2 chieu }

Function TimPtuMax( A : Mang2C; M,N : Integer) : Real;

Var     i, j: Integer;

            Max : Real;

Begin

      Max := A[1, 1];

      For i:=1 to M do

For j:=1 to N do

If (A[i, j]  > Max) Then Max := A[i,j];

TimPtuMax : = Max;

End;

{ 5. Than chuong trinh chinh    }

BEGIN

Writeln( ‘Nhap mang 2 chieu:’);         NhapMang2C (A, M, N );

Writeln( ‘Mang da nhap la:’);             XuatMang2C (A, M, N );

Writeln( ‘So lan xuat hien 0 trong mang :’, DemPtu0 ( A, M, N) );

Writeln( ‘Gia tri lon nhat trong mang :’, TimPtuMax( A, M, N) );

Readln;

END.
Bạn thấy bài viết này như thế nào?: 
No votes yet
Ảnh của Tommy Tran

Tommy owner Express Magazine

Drupal Developer having 9+ year experience, implementation and having strong knowledge of technical specifications, workflow development. Ability to perform effectively and efficiently in team and individually. Always enthusiastic and interseted to study new technologies

  • Skype ID: tthanhthuy

Advertisement

 

jobsora

Dich vu khu trung tphcm

Dich vu diet chuot tphcm

Dich vu diet con trung

Quảng Cáo Bài Viết

 
Nguyễn Thành Nhân - người Việt trẻ thành danh ở Google

Nguyễn Thành Nhân - người Việt trẻ thành danh ở Google

Ở thung lũng công nghệ cao Silicon, Mỹ có nhiều người Việt Nam trẻ tuổi đang làm việc cho tập đoàn công nghệ hàng đầu thế giới - Google. Họ đang thành công với công việc của mình ở xứ người, nhưng vẫn ấp ủ ngày trở về.

Cổng sạc trên thiết bị di động được EU chuẩn hóa

Cổng sạc trên thiết bị di động được EU chuẩn hóa

Một luật mới của Liên minh châu Âu (EU) sẽ sớm được kí kết, yêu cầu tất cả các công ty bán thiết bị di động trong khu vực sử dụng cổng sạc tiêu chuẩn tương tự nhau.

Step 5: Evaluating applicants of team Drupal

Bước 5: Evaluating applicants of team Drupal

In the earlier steps in this series, we have itemized the kinds of skills as they relate to roles, and ways you can define your requirements.

Tomdesgin.vn

 

Drupal Services