انجمن‌های فارسی اوبونتو

لطفاً به انجمن‌ها وارد شده و یا جهت ورود ثبت‌نام نمائید

لطفاً جهت ورود نام کاربری و رمز عبورتان را وارد نمائید


توزیع گنو/لینوکس اوبونتو ۲۰ ساله شد 🎉

نویسنده موضوع: نیاز به کمک کسی این برنامه را می نویسه؟ (ساده  (دفعات بازدید: 2726 بار)

0 کاربر و 4 مهمان درحال مشاهده موضوع.

آفلاین ٍاحسان ترکم

  • High Hero Member
  • *
  • ارسال: 1039
  • جنسیت : پسر
  • Open your source, Open your mind
کسی کمک می کنه یه برنامه با هر زبان برنامه نویسیی که بلده یک برنامه بنویسه تو متن جستجو کنه که اگر توش حروف زیر بود جایگزین بشه با یک حرف دیگه:     حروف سمت چپ با حروف سمت راست جایگذین شه یعنی حروف سمت چپ برداشته شه و حروف سمت راست جاش بنویسه هم بالعکس با دو دکمه:
مثال: Mesaal  بشه Mesãl  یا khat بشه xat
اگه خروجیشم واسه اوبونتو منظورم فایل .deb هست را هم قرار بدهید که عالی می شود.  :D
sh or sH= š
Sh or SH = Š
zh or zH = ž
Zh or ZH = Ž
aa or aA = ã
AA or Aa = Ã
gh or gH = q
Gh or GH = Q
" '  " = " ` "
kh or kH = x
Kh or KH = X
$  = Dolãr
« آخرین ویرایش: 03 خرداد 1389، 12:19 ب‌ظ توسط finaprp »
بین نرم‌افزار open source و نرم‌افزارهای Free Software تفاوت در روش تبلیغ و گرایش‌های عرضه‌كنندگان آن‌ها نهفته است.
در واقع كاركرد شما به عنوان عرضه كننده نرم‌افزار تفاوتی نمی‌كند،



آفلاین ahmed

  • High Hero Member
  • *
  • ارسال: 1069
  • جنسیت : پسر
    • یادداشت‌های یک دوست‌دار نرم‌افزارهای آزاد
gedit رو باز کنید:
Applications ==> Accessories ==> gedit Text Editor

حالا فایل رو باهاش باز کنید. بعد از باز شدن، از منوی Search گزینهٔ Replace رو انتخاب کنید یا مستقیما از کلید Ctrl + H استفاده کنید. در کادر Search for عبارتی رو که می‌خواهید به یه چیز دیگه تبدیل بشه، بنویسید (مثلا kh) و در کادر Replace with عبارتی رو که می‌خواهید جایگزین اون عبارت دیگه بشه، بنویسید (مثلا x). این کار رو برای بقیهٔ حروف هم تکرار کنید.
OpenOffice.org هم همچین چیزی داره. فقط کافیه که Ctrl + F رو بزنید.

lomion

  • مهمان
و یه سوال برام پیش اومد که این برنامه به چه دردی می خوره؟  ::)

آفلاین Aref

  • Full Member
  • *
  • ارسال: 116
  • جنسیت : پسر
  • شهید پرفسور مجید شهریاری
و یه سوال برام پیش اومد که این برنامه به چه دردی می خوره؟  ::)
با سلام
فکر کنم به درد گرفتن نمره پروژه تو درس برنامه نویسی :D

آفلاین ٍاحسان ترکم

  • High Hero Member
  • *
  • ارسال: 1039
  • جنسیت : پسر
  • Open your source, Open your mind
می خوام هر کی فینگلیش نوشت بشه خط اوروفارسی.
خط اورافارسی: http://www.eurofarsi.com/index.html
 
و یه سوال برام پیش اومد که این برنامه به چه دردی می خوره؟  ::)
با سلام
فکر کنم به درد گرفتن نمره پروژه تو درس برنامه نویسی :D
اگه می خواستم نمره بگیرم می گفتم با فلان زبان بنویسید درصورتی که من گفتم هر زبانی که خواستید بنویسید. و برای این به درد می خوره که می خوام یه سایته با زبان فارسی و خط لاتین بسازم. و مطالب سایت را کاربران بنویسند می خوام نویسندگان سایت این نرم افزار و داشته باشند براشون فینگلیش رو به این خط تبدیل کنه. و یا بالعکس.
بین نرم‌افزار open source و نرم‌افزارهای Free Software تفاوت در روش تبلیغ و گرایش‌های عرضه‌كنندگان آن‌ها نهفته است.
در واقع كاركرد شما به عنوان عرضه كننده نرم‌افزار تفاوتی نمی‌كند،



آفلاین یک پسر خلاق

  • Jr. Member
  • *
  • ارسال: 39
کسی کمک می کنه یه برنامه با هر زبان برنامه نویسیی که بلده یک برنامه بنویسه تو متن جستجو کنه که اگر توش حروف زیر بود جایگزین بشه با یک حرف دیگه:     حروف سمت چپ با حروف سمت راست جایگذین شه یعنی حروف سمت چپ برداشته شه و حروف سمت راست جاش بنویسه هم بالعکس با دو دکمه:
مثال: Mesaal  بشه Mesãl  یا khat بشه xat
اگه خروجیشم واسه اوبونتو منظورم فایل .deb هست را هم قرار بدهید که عالی می شود.  :D
sh or sH= š
Sh or SH = Š
zh or zH = ž
Zh or ZH = Ž
aa or aA = ã
AA or Aa = Ã
gh or gH = q
Gh or GH = Q
" '  " = " ` "
kh or kH = x
Kh or KH = X
$  = Dolãr


بهترین و ساده ترین راه استفاده از lex ه! کافیه تو اوبونتو flex رو نصب کنید!
lex یه برنامه تحلیل لغوی ه که برای توکن بندی ورودی مثلا برای ساختن کامپایلر استفاده میشه!
یه کم سرچ کنین کار باهاش خیلی راحته! بیشتر از ۱۵ خط هم فکر نمیکنم نیاز داشته باشه کد بزنید!
« آخرین ویرایش: 04 خرداد 1389، 10:47 ق‌ظ توسط kenjush »

آفلاین .:::_| Smart Boy |_:::.

  • Sr. Member
  • *
  • ارسال: 397
  • جنسیت : پسر
  • براي بهره‌مند شدن از آزادي بايد خود را مهار كنيم.
سلام  :)
من يه چيزايي براتون نوشتم. البته كامپايلش نكردم، چون فكر كردم فقط الگوريتمش كافي باشه. البته اگر اجرا كرديد و ايراد داشت و حتما با كامپايل شدش احتياج داشتيد و نتونستيد خودتون ايراد رو برطرف كنيد حتما براتون كامپايل شدش رو مي ذارم. اگر توضيحي هم لازم بود، بگيد تا توضيح بدم...
#include <iostream.h>
#include <stdio.h>
#include <string.h>
#define MAX 100
int main()
{
char mainStr[MAX];
cout << "Enter string for convert > ";
gets(mainStr);
for (int i = strlen(mainStr) - 1; i >= 0; i--)
if (mainStr[i] == 'H' || mainStr[i] == 'h')
{
if (mainStr[i-1] == 's')
mainStr[i] = 'š';
else if (mainStr[i-1] == 'S')
mainStr[i] = 'Š';
else if (mainStr[i-1] == 'z')
mainStr[i] = 'ž';
else if (mainStr[i-1] == 'Z')
mainStr[i] = 'Ž';
else if (mainStr[i-1] == 'g')
mainStr[i] = 'ã';
else if (mainStr[i-1] == 'G')
mainStr[i] = 'Ã';
else if (mainStr[i-1] == 'k')
mainStr[i] = 'q';
else if (mainStr[i-1] == 'K')
mainStr[i] = 'Q';
strcpy(&mainStr[i-1], &mainStr[i]);
}
else if (mainStr[i-1] == 'a')
if (mainStr[i] == 'a' || mainStr[i] == 'A')
{
mainStr[i] = 'ã';
strcpy(&mainStr[i-1], &mainStr[i]);
}
else if (mainStr[i-1] == 'A')
if (mainStr[i] == 'a' || mainStr[i] == 'A')
{
mainStr[i] = 'Ã';
strcpy(&mainStr[i-1], &mainStr[i]);
}
else if (mainStr[i] == '\'')
mainStr[i] = '`';
else if (mainStr[i] == '$')
{
int j;
for (j = strlen(mainStr); j >= i; j--)
mainStr[j+5] = mainStr[j];
char dolar[] = "Dolãr";
int count = i-1;
for (j = 0; j < 5; j++)
mainStr[count++] = dolar[j];
}
cout << "\nEdited string is: " << mainStr;
return 0;
}
« آخرین ویرایش: 06 خرداد 1389، 05:09 ب‌ظ توسط Smart_Boy »
عیب رندان مـکن ای زاهد پاکیزه سـرشت     کـه گناه دگــران بر تــو نخواهند نوشت
من اگر خوبــم اگر بــد تو برو خود را باش     هر کسی آن درود عاقبت کار که کشت

آفلاین (|33@5

  • High Sr. Member
  • *
  • ارسال: 530
  • جنسیت : پسر
پاسخ به: نیاز به کمک کسی این برنامه را می نویž
« پاسخ #7 : 06 خرداد 1389، 04:06 ب‌ظ »
درود

این هم برنامه ای که خواسته بودید(C# Windows Forms Application)
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace eurofarsi
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            StringBuilder javandata;
            javandata = new StringBuilder(richTextBox1.Text);
            for (int i = javandata.Length - 1; i >= 0; i--)
            {
                if (javandata[i] == 'H' || javandata[i] == 'h')
                {
                    if (javandata[i - 1] == 's')
                    {
                        javandata[i] = 'š';
                        javandata.Remove(i - 1, 1);
                    }
                    else if (javandata[i - 1] == 'S')
                    {
                        javandata[i] = 'Š';
                        javandata.Remove(i - 1, 1);
                    }
                    else if (javandata[i - 1] == 'z')
                    {
                        javandata[i] = 'ž';
                        javandata.Remove(i - 1, 1);
                    }
                    else if (javandata[i - 1] == 'Z')
                    {
                        javandata[i] = 'Ž';
                        javandata.Remove(i - 1, 1);
                    }
                    else if (javandata[i - 1] == 'g')
                    {
                        javandata[i] = 'q';
                        javandata.Remove(i - 1, 1);
                    }
                    else if (javandata[i - 1] == 'G')
                    {
                        javandata[i] = 'Q';
                        javandata.Remove(i - 1, 1);
                    }
                    else if (javandata[i - 1] == 'k')
                    {
                        javandata[i] = 'x';
                        javandata.Remove(i - 1, 1);
                    }
                    else if (javandata[i - 1] == 'K')
                    {
                        javandata[i] = 'X';
                        javandata.Remove(i - 1, 1);
                    }
                }
                else if (javandata[i] == 'A' || javandata[i] == 'a')
                {
                    if (javandata[i - 1] == 'a')
                    {
                        javandata[i] = 'ã';
                        javandata.Remove(i - 1, 1);
                    }
                    else if (javandata[i - 1] == 'A')
                    {
                        javandata[i] = 'Ã';
                        javandata.Remove(i - 1, 1);
                    }
                }
                else if (javandata[i] == '\'')
                {
                    javandata[i] = '`';
                }
                else if (javandata[i] == '$')
                {
                    javandata.Remove(i, 1);
                    javandata.Insert(i, "Dolãr");
                }
            }
            richTextBox1.Text = javandata.ToString();
        }

        private void خروجToolStripMenuItem_Click(object sender, EventArgs e)
        {
            Close();
        }

        private void پاکسازیصفحهToolStripMenuItem_Click(object sender, EventArgs e)
        {
            richTextBox1.Clear();
        }

        private void Form1_Load(object sender, EventArgs e)
        {

        }       
    }
}

این هم لینک فایل پروژه :
http://javandata.persiangig.com/other/eurofarsi.zip
« آخرین ویرایش: 06 خرداد 1389، 04:31 ب‌ظ توسط javandata »
اگر عقیده مخالف، شما را عصبانی می کند، نشانه آن است که شما ناخودآگاه می دانید که دلیل مناسبی برای آنچه فکر می کنید، ندارید.