انجمنهای فارسی اوبونتو
جامعه کاربران => معرفی نرمافزار => نویسنده: حاجاقا در 17 اسفند 1391، 12:37 بظ
-
سلام
من به برنامه ای نیاز دارم که تاریخی در گذشته را به آن بدهیم و خودش تعداد روزهای گذشته را هر روز نشان دهد.
راستش با توجه به سواد و توانم هم در این انجمن و هم در اینترنت خیلی گشتم ولی چیزی که زیاد بود، برنامهی عکس برنامهی مورد نیاز من بود. یعنی همگی تاریخی در آینده به برنامه داده میشد و تعداد روزهای باقی مانده را نشان میداد.
من این برنامه را برای اوبونتوی ۱۲.۰۴ میخواهم که در دستکاتپم نشان دهد. اگر هم بشود که چند تا تاریخ را به برنامه داد، دیگه چه بهتر!
ممنون میشوم اگر کسی بتواند به من کمک کند تا این برنامه را پیدا کنم.
با تشکر
-
متوجه نشدم دقیقا چی منتظورته میشه با مثال توضیح بدی؟
-
ببین من به برنامه تاریخ 1391/10/18 را میدهم. برنامه محاسبه میکند که امروز که هفدهم اسفند است، ۵۹ روز از آن تاریخ گذشته. فردا نشان میدهد که ۶۰ روز گذشته و هر روز به همین منوال.
این برنامه باید روی دسکتاب یک عدد نشان دهد که همانا تعداد روزهای گذشته از تاریخ داده شده باشد. اگر هم قابلیت چندین تاریخ داشته باشد، عنوان هر کدام را هم بنویسد. مثلا ترک سیگار: ۷۸ روز
هر روز خودش باید محاسبه کند.
اگر تونستم منظورم رو برسونم که چه بهتر. اگر نه، بگو کجا را بیشتر توضیح دهم.
مرسی
-
چرا خودت نمینویسی؟ این ایده میتونه یه شروع عالی برای یادگیری برنامهنویسی کاربردی باشه ;)
-
چه ایده ی جالبی! کلاُ اصلا بهش فکر نکرده بودم!
با چه زبانی باید بنویسم؟
از کجا باید شروع کنم؟
چه پیش نیازهایی باید داشته باشم؟
-
چنین برنامهای رو می شه خیلی راحت با bash script یا خانوادهی سی (برای راحتی کار سی++) نوشت. اگه من بودم با سی++ مینوشتم. شروعش هم بستگی به اشنایی فعلیات با برنامه نویسی داره. اگه هیچی نمیدونی، هر آموزشی که از ابتدا شروع کرده باشه و با مثال پیشبره خوبه.
مثلاً: http://www.gillius.org/ctut/index.htm یا http://www.cprogramming.com/tutorial/c++-tutorial.html
حتا میتونی کتابهای ترجمهشدهای مثل دیتل رو هم تهیّه کنی.
در ضمن این هم راهنمای یک صفحهای کامپایلر GCC:
http://pages.cs.wisc.edu/~beechung/ref/gcc-intro.html
-
روش بهتر اینه که سورس اون برنامه هایی که شمارش آینده رو حساب میکنندبگیری و ببینی چطور کار میکنند و تغییرشون بدی!
یک دایره بکش. وترش رو در راستای افق بکش. نقطه تلاقی وتر و دایر در سمت راست رو بذار O=روز اول سال
a=روزی که درش هستیم=نقطه دلخواه روی دایره
b=روز شروع شمارش در گذشته (روز ترک سیگار)=نقطه دلخواه روی دایره
قوس ob = زمان گذشته از عید نوروز تا روز ترک سیگار در سال اول
ba = زمان مجهول
ao = زمان باقی مانده تا نوروز
ob و ao مشخص هستند
ba = 365 - ao - ob
یک جزییاتی مثل سال کبیسه و محاسبه سالهای عبور کرده (اگر بیشتر از یک سال شده باشه)... داره که باید در نظر بگیری!
-
از دانیال، صمیمانه سپاسگزارم. خدا کنه که بتونم ظرف یک سال همچین چیزی بنویسم! اگه بشه، رسما اولین برنامه ام را با زبانی غیر زبانهای وب، نوشتهام. فکر کن!
کیان! اصلاً نیازی به این همه فاکتور نداره. کافیه که راس ساعت ۱۲ نیمه شب، یک روز به عدد مذکور اضافه کنه. اینهایی که تو گوشزد کردی، احتمالاً برود به فازهای بعدی برنامه نویسی یادگیری من!
حالا که این همه شماها خوبید، من هم یک سایتی را معرفی کنم که مال یکی از دوستانم است و چند روز پیش دربارهی گیک مطلبی نوشته بود.
فرهنگ اصطلاحات فارسی امروزی : farsitoday.ir
فقط اگه من بتونم...
-
می تونی با سی++ بنویسی ! به این صورت که اول تاریخ رو از کاربر می گیره و داخل یک فایل میریزه .
و بعد تاریخ ذخیره شده در فایل با تاریخ فعلی مقایسه می کنه که این تاریخ فعلی می تونه کاربر وارد کنه
یا از سیستم بگیره . بعد یه شمارنده شرطی ایجاد می کنی که هر 24 ساعت یکی اضافه کنه .
برای دریافت تاریخ هم از کاراکترها استفاده کن چرا که برای مقایسه با تاریخ ثبت شده در فایل راحت تری .
می مونه نحوه ی دریافت کاراکتر که می تونی 00 / 00 / 00 انجام بدی.
برای سال و ماه و روز(6 ماه اول و 6 ماه دوم) هم فقط چندتا if می خواد .
-
اگر میخواهید با bash کار کنید ، فرمان date را فراموش مکنید
-
ممنونم بچه ها.
فعلا تونستم بفهمم که ++g در سیستمم نصب است!
حالا حالا ها مونده تا بتونم به جاهایی برسم که شماها راهنمایی کردید.
-
daycounter.tar.gz
http://ubuntuone.com/6GuG7mMfY6DNiD7hbQ7NK1 (http://ubuntuone.com/6GuG7mMfY6DNiD7hbQ7NK1)
نسخه ی آزمایشی
این برنامه یک تاریخ میلادی در گذشته را گرفته و تعداد روزهای گذشته را محاسبه می کند.
مثلا
please enter date(y,m,d):2013,3,13
1 days passed.
Do you want to continue(y,n)?y
please enter date(y,m,d):2013,3,12
2 days passed.
Do you want to continue(y,n)?y
please enter date(y,m,d):2013,3,1
13 days passed.
Do you want to continue(y,n)?n
quitting
-
سلام
عجیب است که من این آخرین پست را تازه همین الان دیدم!
به گمانم همانی باشد که میخواهم. به خصوص اینکه فایل سورس را هم برایم گذاشتی.
خیلی خیلی ممنونم. اگر مشکلی (هم در یادگیری زبان سی و هم در اجرای این برنامه) داشتم، باز هم مزاحمتان خواهم شد!