4.24.2012

Homework 24/04 (Full Access)

Dưới đây là  3 HWs ngày hôm nay 24/04. Các bạn tham khảo và gửi cho ý kiến phản hồi. Cảm ơn !
Chú ý: 3 bài này là mình tự làm và không có sự tham khảo bài giải trên bảng của cô. Nên cân nhắc trước khi gửi bài cho cô nếu bạn thực sự chưa hiểu code. Mọi thắc mắc xin liên hệ mình hoặc để lại comment trong blog này ☺


<-1. Bài tập về xử lý chuổi->
Bạn hãy nhấp chuột vào dấu ngắt nhảy để xem nội dung !




#include<iostream.h>
#include<conio.h>
#include<stdio.h>
#include<dos.h>
#include<stdlib.h>

char gtrim(char a[],int f)
{
int n=strlen(a);
while(a[f]==' ')
{
for(int p=f ;p<n;p++)
a[p]=a[p+1];
a[n--]=NULL;
}
}
char ctrim(char a[])  
{
int n=strlen(a);
for(int i=1;i<n;i++)
if(a[i]==' '&&a[i+1]==' ')
gtrim(a,i+1);
}
int main()
{
char *str;
int n=0;
str=new char[100];
cout<<"Hay nhap chuoi vao: ";
fflush(stdin);
gets(str);
gtrim(str,0);
ctrim(str);
cout<<"Chuoi da loai khoan trang thua (neu co):";
puts(str);
n=strlen(str);
for(int i=0;i<n;i++)
{
if(str[i]==' ')
str[i]='\n';
cout<<str[i];
}
cout<<"\n";
}
<-2. Bài tập về mảng  2 chiều->


#include<iostream.h>
#include<conio.h>
#include<stdio.h>
#include<dos.h>
#include<stdlib.h>
void insert(int a[][100],int n, int m)
{
cout<<"Nhap du lieu mang  2 chieu: [row][col]\n ";
for(int i=0;i<n;i++)
for(int j=0;j<m;j++)
{
cout<<i+1<<"."<<j+1<<". "<<"a["<<i+1<<"]["<<j+1<<"]= ";
cin>>a[i][j];
}
}
void ets(int a[][100],int n,int m)//Echo to screen
{
system("cls");
cout<<"Xuat du lieu mang hai chieu\n";
for(int i=0;i<n;i++)
for(int j=0;j<m;j++)
{
cout<<a[i][j]<<"\t\t";
if(j==m-1)
cout<<"\n";
}
}
void sumb(int a[][100], int n,int m)
{
int sum=0;
for(int i=0;i<n;i++)
sum+=a[i][0];
for(int i=0;i<n;i++)
sum+=a[i][m-1];
for(int j=0;j<m;j++)
sum+=a[0][j];
for(int j=0;j<m;j++)
sum+=a[n-1][j];
cout<<"Tong cac phan tu tren duong bien cua ma tran da nhap la: "<<sum<<"\n";
}
int asc(int a[][100],int n, int m)
{
int i=0,p=0;
if(n<m)
{
p=n;
cout<<"Ma tran da duoc la vuong bang cach bo bot cot\n";
}

else
{
p=m;
cout<<"Ma tran da duoc la vuong bang cach bo bot hang\n";
}
if(a[i][i]<a[i+1][i+1]&&i<p)
{
return 1;
i++;
}
return 0;
}
void mtu(int a[][100],int n, int m)
{
int max=a[0][0],k=0;
for(int i=0;i<n;i++)
for(int j=0;j<i+1;j++)
{
if(a[i][j]>max)
max=a[i][j];
}
cout<<"\nMa tran duoc tinh ";
for(int i=0;i<n;i++)
for(int j=0;j<i+1;j++)
cout<<a[i][j];
cout<<"\nPhan tu lon nhat trong ma tran tam giac tren tren la: "<<max<<"\n";
}
int main()
{
int a[100][100],n,m;
cout<<"Nhap vao so dong cua mang: ";cin>>n;
cout<<"Nhap vao so cot cua mang: ";cin>>m;
insert(a,n,m);
ets(a,n,m);
sumb(a,n,m);
if(asc(a,n,m)==1)
cout<<"Duong cheo tang\n";
else
cout<<"Duong cheo khong tang\n";
mtu(a,n,m);
}
<-3.bài tập về tệp->

#include<iostream.h>
#include<conio.h>
#include<stdio.h>
#include<dos.h>
#include<stdlib.h>


void write(FILE *f,int a[][100],int n, int m)
{
f=fopen("D:\\matran.in","wb");
if(f==NULL)
{
cout<<"cannot create file !";
exit(1);
}
for(int i=0;i<n;i++)
for(int j=0;j<m;j++)
{
putw(a[i][j],f);
if(j==m-1)
fputc('\n',f);
else
fputc(' ',f);
}
fclose(f);

}
void read(FILE *f,int n,int m)
{
f=fopen("D:\\matran.in","rb");
if(f==NULL)
{
cout<<"cannot open file !";
exit(1);
}
char s;
for(int i=0;i<n*m;i++)//thuat toan chua toi uu
{
fgetwc(f);
printf("%c ",s);
}
fclose(f);
}
void insert(int a[][100],int n, int m)
{
cout<<"Nhap du lieu mang  2 chieu: [row][col]\n ";
for(int i=0;i<n;i++)
for(int j=0;j<m;j++)
{
cout<<i+1<<"."<<j+1<<". "<<"a["<<i+1<<"]["<<j+1<<"]= ";
cin>>a[i][j];
}
}
int main(void)
{
FILE *f;
int a[100][100],n,m;
fflush(stdin);
cout<<"Nhap vao so dong cua mang: ";cin>>n;
cout<<"Nhap vao so cot cua mang: ";cin>>m;
insert(a,n,m);
write(f,a,n,m);
read(f,n,m);
getch();
}





1 Nhận xét:

Tại lúc 22:39:00 GMT+7 24 tháng 4, 2012 , Anonymous Nặc danh nói...

good job men...bạn của tui....

 

Đăng nhận xét

Đăng ký Đăng Nhận xét [Atom]

<< Trang chủ