PDA

View Full Version : يك نظر خواهي و سوال در مورد يك برنامه



SamaPic
یک شنبه 24 آذر 1387, 22:15 عصر
با سلام خدمت دوستان عزيز.
من برنامه ي تمرين تايپ را بوسيله ي برنامه ي سي نوشته ام و بطور صحيح اجرا مي شود و هيچ مشكلي در مورد اين برنامه ندارم.
سوال من اين است : آيا مي شود همين برنامه را براي تايپ فارسي تعميم داد. (منظورم فارسي در ورودي و خروجي اطلاعات و در خواست ها.)
اگر امكان دارد فقط راهنمايي كنيد.
البته اگر تذكري در مورد بهتر شدن برنامه يا در مورد نوشتن برنامه بطور بهتر داريد ( ايرادي در برنامه نويسي من مي بينيد) ممنون مي شوم بنويسيد.
با سپاس فراوان از شما دوست عزيز به خاطر وقتي كه در اختيار من گذاشتيد.





#include "stdafx.h"
#include <iostream>
#include <conio.h>
#include <stdlib.h>
#include <time.h>

using namespace System;
using namespace std;

void main()
{
int t=1;
char ans;
while (t)
{
time_t t;
srand((unsigned)time(&t));
int i,j,x,n,T,F;
char ch;
cout<<endl<<"You Enter 20 charecter"<<endl;
j=20;
for (i=0;i<=j;i++)
{
x=(rand()%94);
x+=32;
ch=x;
cout<<endl<<ch<<" Please Enter Charecter : ";
n=getche();
if (x==n)
T++;
else
F++;
}
cout<<endl<<"Number of Charecter true : "<<T<<endl<<"Number of Charecter false : "<<F;
int r=0;
L3:
cout<<endl<<"Do you want to countinue (Y/N) ?";

L1:
if (r==3)
{
cout<<endl<<"I can't answer you Please any key to exit.";
_getch();
return;
}

cin>>ans;
switch (ans)
{
case ('Y'):
t=1;
break;
case ('N'):
t=0;
break;
case ('y'):
t=1;
break;
case ('n'):
t=0;
break;
default:
cout<<endl<<"Charecter entery not avaibile.Please Enter agin : ";
r++;
goto L1;
}
}

_getch();
}


خدانگهدار.

Nima_NF
دوشنبه 25 آذر 1387, 02:05 صبح
در محیط کنسول دریافت فارسی مشکل هست، دوستان قبلا در فروم ابزارهای فارسی ساز را معرفی کرده اند.

یک پیشنهاد برای بهتر کردن برنامه شما:
سعی کنید تا جای ممکن از goto در ++C/C استفاده نکنید. (البته بهتر هست بگیم هرگز!) استفاده از goto علاوه بر اینکه باعث ناخوانی برنامه می شود، عواقب خطرناکی هم خواهد داشت (احتمال بروز خطاهای پیش بینی نشده) پس سعی کنید برنامه خود را با حلقه ها و مواردی مانند break و continue بنویسید.