ورود

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;
}