nhờ giải giùm bài tập

Thảo luận trong 'Khoa Khoa Học Máy Tính' bắt đầu bởi Mèo, 20 Tháng mười một 2010.

  1. Offline

    Mèo

    • Thành Viên Mới

    Số bài viết:
    48
    Đã được thích:
    4
    Điểm thành tích:
    0
    Tìn hình là ko bít về pascal ,nhờ các bạn giải thích dùm, chuyển qua qua C thì càng tốt.

    Uses CRT;
    Const Max N=40;
    Max Val=500;
    Var X,Y : Array[1..MaxN] of Word;
    Fx : Array[0..MaxN,0..Max Val] of Word;
    n,i,j : Integer;
    A,B : Word;
    Procedure Nhap;
    Var f: Text;
    Begin
    Clrscr;
    Assign (f,'INT.txt');
    Reset(f);
    Readln(f,n);
    FillChar(X,SizeOf(X),0);
    Y:=X;
    For i:=1 to n do
    Read(f,X);
    Close(f);
    End;
    Function GetMax(v1,v2 : Word) : Word;
    Begin
    if(v1>v1 then GetMax := v1
    else GetMax:=v2;
    End;
    cảm ơn
  2. Offline

    IME

    • Quy ẩn giang hồ

    Số bài viết:
    219
    Đã được thích:
    196
    Điểm thành tích:
    240
    Lâu rồi mình chỉ nhớ sơ sơ . đại loại thế này
    #
    Uses CRT; ------------//khai báo thủ tục màng hình
    Const Max N=40; --------------//gán hằng
    Max Val=500;
    Var X,Y : Array[1..MaxN] of Word;----------//khai báo mảng kiểu word. word là kiểu số nguyên phạm vi từ 0 đến 65535
    Fx : Array[0..MaxN,0..Max Val] of Word;--------------//Cái này nếu ko nhầm là mảng 2 chiều... :018:
    n,i,j : Integer; -------------// Khai báo 3 biến dữ liệu kiểu số nguyên
    A,B : Word; --------------// khai báo 2 biến kiểu word
    Procedure Nhap;------------- //thủ tục Nhap
    Var f: Text; -----------------//khai báo biến kiểu ký tự
    Begin
    Clrscr;--------------------- //xóa màn hình
    Assign (f,'INT.txt');---------- //gán tên tệp int.txt vào cho biến f. biến f thành biến tệp tin
    Reset(f); ----------------//Mở tệp tin để đọc.
    Readln(f,n); -----------//đọc dữ liệu từ tệp vào biến n,nếu không nhầm thì n là biến chứa số phần tử ghi trong tập tin. n được ghi đầu tiên.
    FillChar(X,SizeOf(X),0); --------//FillChar Ðiền một số byte có giá trị vào một biến. hàm size of trả về kích thước (ô nhớ) của biến dữ liệu hay kích thước của kiểu dữ liệu. Hàm này điền toàn bộ phần tử của mảng bằng 0.
    Y:=X; ---------------------//gán giá trị X cho Y.
    For i:=1 to n do -------------------
    Read(f,X); ---------------------// đọc dữ liệu trên mỗi dòng và đưa giá trị vào mảng X;
    Close(f); -------------------//đóng tệp tin.
    End;
    Function GetMax(v1,v2 : Word) : Word; //Hàm Getmax kiểu Word, có 2 biến v1 và v2 kiểu word.
    Begin
    if(v1>v1 then GetMax := v1
    else GetMax:=v2;
    End;
    //có thể thấy hàm này trả về giá trị lớn hơn trong 2 giá trị v1 v2 truyền vào.
    #
    //đoạn chương trình trên nhìn hơi thiếu...
    //nếu bạn muốn nghiên cứu thêm pascal thì mình có tài liệu này, bạn có thể download về nghiền ngẫm ^^.
    Dưới đây là đoạn code mình thử chuyển mã giả qua C.

    Mã:
    #defind MaxN 40
     #defind MaxVal 500
     x[MaxN],y[MaxN];
     unsigned n,i,j;// unsigned  <=> unsigned int <=> Word.
     float B,A;
     file *f;
     Void nhap()
     {
     clrscr();
      f=fileopen("INT.txt","r");----//mở tập tin ở chế độ đọc.
     fscanf(f,"%d",&n);
    for(i=1;i<=n;i++)   // vòng lặp này thay cho fillchar
    X[i]=0;
     Y=X;
     for(i=1;i<=N;i++)
     fscanf(f;"%d",&X[i]);
     fclose(f);
    }
    unsigned getmax(unsigned v1,unsigned v2)
    {
    if(v1>v2)
    return v1;
    else return v2;
    }
    
    integerGynny thích bài này.
  3. Offline

    integer

    • Tiếu Ngạo Giang Hồ

    • :-?
    Số bài viết:
    1.695
    Đã được thích:
    1.313
    Điểm thành tích:
    900
    Mã:
    fwrite(X,sizeof(int),1,f);
    đây là file văn bản nên dùng fprintf() hay fputs() là được.
    fwrite() dùng cho tập nhị phân.

    chương trình trên thiếu thì phải, có cái function khai báo để không.
    Mã:
    Fx : Array[0..MaxN,0..Max Val] of Word;
    -->unsigned int Fx[0,MaxN][0,MaxVal]
    Pascal không còn nhớ nhiều.:001:
  4. Offline

    IME

    • Quy ẩn giang hồ

    Số bài viết:
    219
    Đã được thích:
    196
    Điểm thành tích:
    240
    -->
    Mình đã đính chính lại bài viết.

Chia sẻ trang này

Advertising: Linux system admin | nukeviet | nukeviet 4 | Upload ảnh miễn phí