Programming Language
Bạn có muốn phản ứng với tin nhắn này? Vui lòng đăng ký diễn đàn trong một vài cú nhấp chuột hoặc đăng nhập để tiếp tục.


FOREVER STUDY
 
Trang ChínhPortalTìm kiếmLatest imagesĐăng kýĐăng Nhập
Tìm kiếm
 
 

Display results as :
 
Rechercher Advanced Search
Latest topics
» Tối ưu hóa thuật toán
Cấp phát bộ nhớ động Icon_minitimeThu Apr 14, 2011 8:47 pm by gianggiangonline

» Can moi nguoi giup do lam bai tap nay
Cấp phát bộ nhớ động Icon_minitimeSat Mar 26, 2011 5:23 am by nameless2604

» Bài tập tuần 1.
Cấp phát bộ nhớ động Icon_minitimeThu Feb 17, 2011 11:40 pm by Admin

»  tên hàn quốc của tớ là jung hyun in! tên của bạn là gì vậy?
Cấp phát bộ nhớ động Icon_minitimeThu Dec 30, 2010 3:17 am by gianggiangonline

» Anh không chỉ quan trọng............như một chiếc đồng hồ báo thức của em!!!
Cấp phát bộ nhớ động Icon_minitimeSat Oct 23, 2010 10:58 am by chien_le

» Có những điều thú vị mà không nói ra thì ai cũng biết
Cấp phát bộ nhớ động Icon_minitimeTue Oct 19, 2010 11:03 pm by gianggiangonline

» [PopCap Game] Plants Vs Zombies [MF]
Cấp phát bộ nhớ động Icon_minitimeTue Oct 19, 2010 9:25 pm by kingofdrak

» help me me memememememem
Cấp phát bộ nhớ động Icon_minitimeMon Oct 18, 2010 10:22 am by chien_le

» 3 bai tap ve de quy
Cấp phát bộ nhớ động Icon_minitimeTue Oct 12, 2010 6:36 am by chien_le

Navigation
 Portal
 Diễn Đàn
 Thành viên
 Lý lịch
 Trợ giúp
 Tìm kiếm
Diễn Đàn
Affiliates
free forum


 

 Cấp phát bộ nhớ động

Go down 
2 posters
Tác giảThông điệp
iShinichj

iShinichj


Tổng số bài gửi : 46
Points : 5071
Reputation : 0
Join date : 01/09/2010
Age : 34
Đến từ : HUT

Cấp phát bộ nhớ động Empty
Bài gửiTiêu đề: Cấp phát bộ nhớ động   Cấp phát bộ nhớ động Icon_minitimeWed Sep 01, 2010 6:21 pm

Dùng hàm cấp phát void cap(...) thì báo lỗi

#include<iostream>
#include<iomanip>
using namespace std;

//Cap phat bo nho cho ma tran
void cap(float**A,int m,int n)
{
A=new float*[m];
for(int i=1;i<=n;i++)
A[i]=new float[n];
}
//Ham nhap ma tran
void nhap(float**A,int m,int n)
{
for(int i=1;i<=m;i++)
for(int j=1;j<=n;j++)
{
cout<<" A["<<i<<"]["<<j<<"]= ";
cin>>A[i][j];
}
}
//Hien thi ma tran
void in_mt(float**A,int m,int n)
{
for(int i=1;i<=m;i++)
for(int j=1;j<=m;j++)
{
if(j==1) cout<<"\n";
cout<<setw(6)<<A[i][j];
}
}
int main()
{
float**A;
int m,n;
cout<<"\n So hang cua ma tran: m= ";
cin>>m;
cout<<" So cot cua ma tran: n= ";
cin>>n;
cap(A,m,n);
nhap(A,m,n);
in_mt(A,m,n);
cout<<"\n\n\a\a\a";
}

cấp phát trực tiếp thì không sao

#include<iostream>
#include<iomanip>
using namespace std;

//Ham nhap ma tran
void nhap(float**A,int m,int n)
{
for(int i=1;i<=m;i++)
for(int j=1;j<=n;j++)
{
cout<<" A["<<i<<"]["<<j<<"]= ";
cin>>A[i][j];
}
}
//Hien thi ma tran
void in_mt(float**A,int m,int n)
{
for(int i=1;i<=m;i++)
for(int j=1;j<=m;j++)
{
if(j==1) cout<<"\n";
cout<<setw(6)<<A[i][j];
}
}
int main()
{
float**A;
int m,n;
cout<<"\n So hang cua ma tran: m= ";
cin>>m;
cout<<" So cot cua ma tran: n= ";
cin>>n;
A=new float*[m];
for(int i=1;i<=n;i++)
A[i]=new float[n];
nhap(A,m,n);
in_mt(A,m,n);
cout<<"\n\n\a\a\a";
}
Về Đầu Trang Go down
https://study.all-up.com/forum.htm
mrmax




Tổng số bài gửi : 59
Points : 5111
Reputation : 0
Join date : 01/09/2010

Cấp phát bộ nhớ động Empty
Bài gửiTiêu đề: ĐÂY LÀ BẨN DEBUG CHO BAI CUA ISHINICHI(HƯNG PHẢI KO EM :d)   Cấp phát bộ nhớ động Icon_minitimeWed Sep 01, 2010 10:06 pm

CHỖ SỮA MÌNH ĐÁNH DẤU //////////////




#include<iostream.h> ////////
#include<iomanip.h> ///////////
#include<conio.h> //////////

//Cap phat bo nho cho ma tran
float** cap(float **A,int m,int n) ///////////
{
A=new float*[m+1]; ////////
for(int i=1;i<=m;i++) ////////////
A[i]=new float[n+1]; ////////////
return A; ////////////
}
//Ham nhap ma tran
void nhap(float**A,int m,int n)
{
for(int i=1;i<=m;i++)
for(int j=1;j<=n;j++)
{
cout<<" A["<<i<<"]["<<j<<"]= ";
cin>>A[i][j];
}
}
//Hien thi ma tran
void in_mt(float**A,int m,int n)
{
for(int i=1;i<=m;i++)
for(int j=1;j<=n;j++) /////////////
{
if(j==1) cout<<"\n";
cout<<setw(6)<<A[i][j];
}
}
int main()
{
float **A;
int m,n;
cout<<"\n So hang cua ma tran: m= ";
cin>>m;
cout<<" So cot cua ma tran: n= ";
cin>>n;
A=cap(A,m,n); ////////////
nhap(A,m,n);
in_mt(A,m,n);
getch(); ////////////////
}
Về Đầu Trang Go down
iShinichj

iShinichj


Tổng số bài gửi : 46
Points : 5071
Reputation : 0
Join date : 01/09/2010
Age : 34
Đến từ : HUT

Cấp phát bộ nhớ động Empty
Bài gửiTiêu đề: Re: Cấp phát bộ nhớ động   Cấp phát bộ nhớ động Icon_minitimeWed Sep 01, 2010 11:23 pm

Tại sao không cấp phát như sau:
float** cap(int m,int n)
{
float **A=new float*[m];
for(int i=1;i<=m;i++)
A[i]=new float[n];
return A;
}


Tôi không hiểu chỗ m/m+1; n/n+1
Về Đầu Trang Go down
https://study.all-up.com/forum.htm
mrmax




Tổng số bài gửi : 59
Points : 5111
Reputation : 0
Join date : 01/09/2010

Cấp phát bộ nhớ động Empty
Bài gửiTiêu đề: Re: Cấp phát bộ nhớ động   Cấp phát bộ nhớ động Icon_minitimeWed Sep 01, 2010 11:37 pm

Cái này tôi cũng chưa tìm hiểu kỹ chỉ thấy trong sách thầy Ất làm vậy mình cũng bắt chước
Nhưng nếu làm như ông bảo chương trình sẽ phát sinh lỗi.Thử coi.ví dụ m=3,n=4
Về Đầu Trang Go down
Sponsored content





Cấp phát bộ nhớ động Empty
Bài gửiTiêu đề: Re: Cấp phát bộ nhớ động   Cấp phát bộ nhớ động Icon_minitime

Về Đầu Trang Go down
 
Cấp phát bộ nhớ động
Về Đầu Trang 
Trang 1 trong tổng số 1 trang
 Similar topics
-
» ơ, mấy cái lý thuyết về cấp phát động post chỗ nào vậy??????????
» Anh không chỉ quan trọng............như một chiếc đồng hồ báo thức của em!!!

Permissions in this forum:Bạn không có quyền trả lời bài viết
Programming Language :: THẢO LUẬN C & C++-
Chuyển đến