Chào mừng quý vị đến với .

Quý vị chưa đăng nhập hoặc chưa đăng ký làm thành viên, vì vậy chưa thể tải được các tư liệu của Thư viện về máy tính của mình.
Nếu đã đăng ký rồi, quý vị có thể đăng nhập ở ngay ô bên phải.

BÀI TẬP VỀ MẢNG 1 CHIỀU(TT)

Wait
  • Begin_button
  • Prev_button
  • Play_button
  • Stop_button
  • Next_button
  • End_button
  • 0 / 0
  • Loading_status
Nhấn vào đây để tải về
Báo tài liệu có sai sót
Nhắn tin cho tác giả
(Tài liệu chưa được thẩm định)
Nguồn:
Người gửi: Trần Thị Kim Dung (trang riêng)
Ngày gửi: 14h:23' 27-10-2010
Dung lượng: 90.0 KB
Số lượt tải: 31
Số lượt thích: 0 người
Một số bài tập lập trình Pascal
Created by NgoHung
Vấn đề 3: Mảng 1 chiều
 
Bài toán số 3.1: Nhập xuất và tính tổng các phần tử trong mảng.
Ví dụ: A:        1   5   6   7   4  
Kết quả:          Tong S = 23
Hướng dẫn: Để giải quyết bài toán cần phải đảm bảo các vấn đề:
-          Nhập mảng, có thể xây dựng thành hàm để đóng gói và sử dụng lại. Các thao tác theo yêu cầu:
(1) Nhập số N.
(2) Tiến hành lặp (từ 0 đến N-1) và nhập cho các giá trị Ai trong mảng.
Lưu ý: N phải được vào truyền theo dạng tham biến (tức là &N)
-          Xuất mảng. Công việc đơn giản là sử dụng lặp từ 0 đến N-1 để in ra các giá trị Ai cho mảng. Sau đó, Writeln  xuống dòng.
-          Hàm tính tổng các phần tử cho một mảng A
o       Khai báo và khởi tạo toång S là 0.
o       Sử dụng một vòng lặp (từ 0 đến N-1 để duyệt qua tất cả các giá trị Ai) để tính cộng dồn giá trị của Ai vào tổng S.
-          Viết thân chöông trình chính với nội dung dùng để kiểm tra kết quả thực hiện của hàm.
o       Khai báo mảng A có tối đa 20 phần tử và biến N chỉ số lượng phần tử của A.
o       Gọi hàm nhập mảng để nhập mảng A, với N phần tử.
o       Gọi hàm xuất mảng A, với N phần tử.
o       In giá trị của tổng các phần tử bằng cách truyền trực tiếp giá trị trả về của việc tính tổng cho Writeln(……)
o       Gọi hàm Readln( ) trước khi kết thúc  để dừng lại xem kết quả.
Chương trình:
{ 1. Cac khai bao cho chuong trinh    }
Program Mang1C;
Uses crt;
Type    Mang20 = array[1..20] of Integer;
Var      N:Integer;
            A:Mang20;
{ 2. Thu tuc nhap mang A voi N la so phan tu  }
Procedure NhapMang1C(Var  A : Mang20 ;Var N:Integer);
Var i: Integer;
Begin
    Write( `So luong phan tu:` );            Readln( N);
    For i:=0 to N do
    Begin
            Write( `Nhap phan tu thu `, i,`` );      Readln( A[i] );
    End;
End;
 
{ 3. Thu tuc xuat mang A voi N la so phan tu  }
Procedure XuatMang1C( Var  A : Mang20;Var  N :Integer );
Var i:Integer;
Begin
    For  i :=0 to N do
                 Write( A[i]:2 );
    Writeln;
End;
 
{ 4. Chuong trinh con tinh tong cac phan tu trong mang  }
Function TongMang1C( A : Mang20;  N:Integer):longint;
Var i :Integer;
      S :longint;
Begin
    S := 0;
    For  i:=0 to N do
                  S := S + A[i] ;
    TongMang1C:=S;
End;
 
{ 5. Than chuong trinh chinh   }
BEGIN
            NhapMang1C( A, N );
            XuatMang1C( A, N );
            Writeln(` Tong cac phan tu trong mang `, TongMang1C(A, N) );
            Readln;
END.
 
Bài toán tương tự:
(1) Tính tổng các số nguyên dương chia hết cho 5.
Function TongSoChiaHet5( A:Mang20,  N:Integer):Integer;
Var S,i :Integer;
Begin
            S:=0;
            For i:=0 to N do
                  If(A[i] mod 5=0)
                        S := S+A[i];
            TongSoChiaHet5:= S;
End;
(2) Tính tổng các số nguyên tố trong mảng
Function LaSoNT( Var N:Integer) :Integer;
Var i:Integer;
Begin
            For i:=2 to N-1do
                  If(N mod i = 0) then
                        return 0
                  Else
                        return 1;
End;
Function TongSoNT(Var A : Mang20, Var N:Integer):Integer;
Var S,i:Integer;
Begin  
S:=0;
            For i:=0 to Ndo
                  If ( LaSoNT( A[i] ) ) then
                        S :=S+ A[i];
            TongSoNT :=S;
End;
 
Bài toán số 3.2: Đếm số lần xuất hiện của giá trị X trong mảng A. Đếm số lần xuất hiện của các phần tử trong mảng.
Ví dụ: A:        1   5   6   7   4   1   5   5   1   1
            X:        6
 
Gửi ý kiến