View Full Version : یک برنامه ساده(کار با فایل)
farhadsafiri
جمعه 30 آذر 1386, 12:05 عصر
سلام
من یک برنامه در محیط borland c++ میخواهم که یک سری
اعداد را از یک فایل txt بخواند . بین اعداد space است. آنها را از
کوچک به بزرگ مرتب کند و max آنها در متغیر بریزدو اعداد مرتب
شده را در یک فایل txt بریزد.
نمونه :
123 56 89 2 25 12
فایل مرتب شده :
123 89 56 25 12 2
emad_67
جمعه 30 آذر 1386, 16:36 عصر
میتونی اینجوری بنویسی
void main()
{
fstream in("01.txt",ios::in);
int a[10];
for(int i=0;!in.eof();i++)
in>>a[i];
for(int j=0;j<i;j++)
cout<<a[j]<<" ";
}
وقتی کلیه اعداد از ورودی خونده شد میتونی مثلا با bubble sort آرایه رو مرتب کنی.
farhadsafiri
جمعه 30 آذر 1386, 20:08 عصر
سلام
من کر این برنامه را در محیط داس میخواهم.
نه c++ (زبان c)
خواهشا سریعا کمک کنید.
galaxy.ice
شنبه 01 دی 1386, 10:48 صبح
جناب سی پلاس پلاس هیچ منافاتی با داس نداره.
{
FILE *fd;
fd =fopen("","");
fread();
sortbubblealgorithm();in local array
FILE *fp;
fp=fopen();
fwrite();
fclose(fd)
fcolse(fp)
{
بقیه به عهده ی دانشجو.
با ctrl+f1 تو محیط turbo c میتونی با پارامتر های دستور های مختلف آشناشی.
farhadsafiri
سه شنبه 04 دی 1386, 20:24 عصر
سلام
ممنون از کدی که نوشتید.
خودم حلش کردم.
اینم کد کاملش :
#include <stdio.h>
#include <conio.h>
#include <string.h>
#include <stdlib.h>
void bubble(int x[],int len);
int f(int z);
int main()
{
clrscr();
FILE *in; /* taerif file */
char *s; /* taerif arraye char */
int i,m;
int *inn; /* taerif arrate int */
in=fopen("D:\\input.txt","w+(w+t)"); /* baz kardan file(dar sorat nabodan file ejad mishvad */
fgets(s,100,in); /* rikhtan mohtaviat file input dar s */
int n=atoi(s); /* shemordan tedad adad dar s */
inn=(int*) malloc(n*sizeof(int)); /* akhtesas hafeze poya be inn */
for(i=1;i<=n;i++)
{
fgets(s,100,in); /* riztan mohtaviat dar inn be onvan int */
inn[i-1]=atoi(s);
}
bubble(inn,n); /* farakhani tabee moratab kardan */
for(i=0;i<n;i++)
{
m=inn[i]; /* peida kardan max */
//printf("%d\n",inn[i]);
}
//printf("%d\n",m);
f(m); /* farakhani tabee chap asme ma */
fcloseall(); /* bastan file ha */
getch();
return 0;
}
void bubble(int x[],int len) /* tabee moratab kardan */
{
int j,k,item;
for(j=len-1;j>=0;j--)
for(k=0;k<len-1;k++)
if(x[k]>x[k+1])
{
item=x[k];
x[k]=x[k+1];
x[k+1]=item;
}
}
int f(int z) /* tabee chape aval asmeman */
{
int soton,satr,y,i,j;
y=(z%10);
soton=(9*y);
satr=int((soton+1)/2);
for(i=1;i<=soton;i++)
{
printf("F");
}
for(j=1;j<=int(satr/2);j++)
{
printf("\nF");
}
for(j=1;j<=int(satr/2);j++)
if(j==(int(satr/2)))
{
for(i=1;i<=(int(soton/2));i++)
printf("F");
}
for(j=int(satr/2);j<=satr;j++)
printf("\nF");
return 0;
}
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.