Asemooni_71
09-01-2013, 19:11
سلام
من باید یه برنامه بنویسم که اعداد رو بگیره و به حروف فارسی توی یک فایل html نمایش بده، اما نمیدونم چه طوری باید از یونیکد استفاده کنم و چه طوری اون رو در فایل html ذخیره کنم تو اینترنت هم گشتم اما چون خیلی مبتدیم سردرنیاوردم لطفا راهنماییم کنید
سلام.این متن برنامه ای هست که تو لازم داری.امیدوارم دیر نشده باشه,آخه من تازه سوالتو دیدم!سوالی داشتی بپرس...:n01:
#include <conio.h>
#include <stdio.h>
#include<string.h>
int main(int argc, char *argv[])
{
int n[100],x[99],s=0,i2=0,i,j,k,m=0;
printf("enter number:");
do
{
i2++;
n[i2]=getche();
}while(n[i2]!='\r');
i2--;
for(j=1;i2>=1;i2--)
{
x[j]=n[i2]-'0';
j++;
}
j--;
FILE *h;
h=fopen("f:\\m1.html","w");
fprintf(h,"<html>");
for(i=j;i>=1;i--)
{
if(s==1)
{
switch(x[i])
{
case 0:fprintf(h,"ده ");break;
case 1:fprintf(h,"یازده ");break;
//yazdah
case 2:fprintf(h,"دوازده ");break;
case 3:fprintf(h,"سیزده ");break;
case 4:fprintf(h,"چهارده ");break;
case 5:fprintf(h,"پانزده ");break;
case 6:fprintf(h,"شانزده ");break;
case 7:fprintf(h,"هفده ");break;
case 8:fprintf(h,"هجده ");break;
case 9:fprintf(h,"نوزده ");break;
}
s=0;
}
else
if(i%3==2)
{
switch(x[i])
{
case 0:fprintf(h,"");break;
case 1:s=1;break;
case 2:fprintf(h,"بیست ");break;
//bist
case 3:fprintf(h,"سی ");break;
case 4:fprintf(h,"چهل ");break;
case 5:fprintf(h,"پنجاه ");break;
case 6:fprintf(h,"شصت ");break;
case 7:fprintf(h,"هفتاد ");break;
case 8:fprintf(h,"هشتاد ");break;
case 9:fprintf(h,"نود ");break;
}
if(x[i-1]!=0&&x[i]!=0&&x[i]!=1)
if(i!=4 && i!=7 && i!=10 && i!=13 && i!=16 && (i+1)!=4 && (i+1)!=7 && (i+1)!=10 && (i+1)!=13 && (i+1)!=16)
fprintf(h," و");
}
else
if(i%3==0)
{
switch(x[i])
{
case 0:fprintf(h,"");break;
case 1:fprintf(h,"صد ");break;
//sad
case 2:fprintf(h,"دویست ");break;
case 3:fprintf(h,"سیصد ");break;
case 4:fprintf(h,"چهارصد ");break;
case 5:fprintf(h,"پانصد ");break;
case 6:fprintf(h,"ششصد ");break;
case 7:fprintf(h,"هفتصد ");break;
case 8:fprintf(h,"هشتصد ");break;
case 9:fprintf(h,"نهصد ");break;
}
if(x[i-1]!=0&&x[i]!=0||x[i]!=0&&x[i-1]==0&&x[i-2]!=0)
fprintf(h," و ");
}
else
{
switch(x[i])
{
case 0:fprintf(h,"");break;
case 1:fprintf(h,"یک ");break;
//yek
case 2:fprintf(h,"دو ");break;
case 3:fprintf(h,"سه ");break;
case 4:fprintf(h,"چهار ");break;
case 5:fprintf(h,"پنج ");break;
case 6:fprintf(h,"شش ");break;
case 7:fprintf(h,"هفت ");break;
case 8:fprintf(h,"هشت ");break;
case 9:fprintf(h,"نه ");break;
}
}
if(j>i+1&&x[i+2]==0&&x[i]==0&&x[i+1]==0||j<i+1&&x[i]==0||j<i+2&&x[i]==0&&x[i+1]==0)
{
fprintf(h,"");
}
else
{
if(i==4)
{ fprintf(h,"هزار ");
for(k=i-1;k>0;k--)
if(x[k]!=0)
m++;
if(m>0) fprintf(h,"و ");
m=0;
}
//hezar
else if(i==7)
{ fprintf(h,"میلیون ");
for(k=i-1;k>0;k--)
if(x[k]!=0)
m++;
if(m>0) fprintf(h,"و ");
m=0;}
else if(i==10)
{ fprintf(h,"میلیارد ");
for(k=i-1;k>0;k--)
if(x[k]!=0)
m++;
if(m>0) fprintf(h,"و ");
m=0;}
else if(i==13)
{ fprintf(h,"تیلیارد ");
for(k=i-1;k>0;k--)
if(x[k]!=0)
m++;
if(m>0) fprintf(h,"و ");
m=0;}
else if(i==16)
{ fprintf(h,"بیلیارد ");
for(k=i-1;x[k];k--)
if(x[k]!=0)
m++;
if(m>0) fprintf(h,"و ");
m=0;}
}
}
fprintf(h,"</html>");
fclose(h);
getch();
return 0;
}
vBulletin , Copyright ©2000-2025, Jelsoft Enterprises Ltd.