PDA

View Full Version : کمک در مورد نوشتن دو برنامه توسط سی شارپ



mahdi_o
دوشنبه 02 بهمن 1385, 14:20 عصر
سلام خدمت شما عزیزان
من توی این دو برنامه زیر مشکل دارم
اولی اش رو نوشتم و فقط یک مشکل کوچیک دارم
اینم صورت اولی:
"برنامه ای بنویسید که یک جمله را که انتهایش با "." (نقطه)
تمام می شود را از ورودی خوانده و تعداد حروف کوچک و بزرگ آن را مشخص کند"


using System;

namespace ConsoleApplication3
{
/// <summary>
/// Summary description for Class1.
/// </summary>
class Class1
{
/// <summary>
/// The main entry point for the application.
/// </summary>

[STAThread]
static void Main()
{
int[] a = new int[26];
int[] b = new int[26];
int word=0 , i;
Console.WriteLine("Please enter your sentence : ");
Console.WriteLine("\n(End of sentence is '.')\n");
while ( word != 46 )
{
word =Console.Read();
for (i=0;i<=25;i++)
{
if (word == 97+i)
++a[i];
if (word == 65+i)
++b[i];
}
}//end of while


for (i=0;i<25;i++)
{
if (a[i]!= 0)
Console.WriteLine((97+i)+ " = " + a[i]);

if (b[i]!= 0)
Console.WriteLine((65+i)+ " = " + b[i]);
}// end of for

}
}
}




من توی این برنامه اومدم هر حرف رو با استفاده از کد اسکی اون خوندم!
کد اسکی نقطه هم 46 بودش!

حالا مشکل من در قسمتی هستش که براتون قرمز کردم!
می خوام کدهای اسکی را موقع چاپ دوباره به کاراتر خودش تبدیل کنم
مثلا توی خروجی به جای کد اسکی 65 حرف A را چاپ کنه
که نمی تونم!!!!!
اگه میشه راهنمایی کنید که چه طوری تغییرش بدم


************************************************** ********

انم دومین برنامه
"برنامه ای بنویسید که اولین روز سال 86 را گرفته و تقویم ماههای سال 86 را تولید نماید.
دراین برنامه باید متدی نوشته شود که با گرفتن شماره ماه، تقویم آن را چاپ نماید."

منم راستش نتونستم اینو اصلا بنویسم
اگه میشه کمک کنید
در ضمن برنامه ها رو به صورت ConsoleApplication می نویسم

ممنون

mahdi_o
دوشنبه 02 بهمن 1385, 23:46 عصر
دوستان عزیز
خیلی حیاتی هستش
کمک کنید

linux
سه شنبه 03 بهمن 1385, 02:31 صبح
دوستان عزیز
خیلی حیاتی هستش
کمک کنید
من که از کد شما سر در نیاوردم!ولی این را امتحان کن شما تعداد حروف بزرگ و کوچک را در یک کلمه میخواهید


using System;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
ConsoleKeyInfo cki = new ConsoleKeyInfo();
Console.WriteLine("Please enter your sentence : ");
Console.WriteLine("\n(End of sentence is '.')\n");
int up = 0;
int lower = 0;
do
{
cki = Console.ReadKey(false );
if (char.IsUpper(Convert.ToChar(cki.KeyChar )))
up +=1;
if (char.IsLower ( Convert.ToChar(cki.KeyChar)))
lower += 1;
} while (cki.KeyChar !='.') ;
Console.WriteLine("\n the number of lower charchter is :{0}" +
"\n then number of upper charcher is :{1}", lower,up);
Console.Read();
}
}
}

mahdi_o
سه شنبه 03 بهمن 1385, 12:44 عصر
ممنون از شما
منم از کهای شما زیاد سر در نیاوردم
چون خیلی مبتدی هستم





یک سوال دیگه
می شه بگید چه طوری می تونم
یه برنامه عدد یک کاراکتری رو بدم
بعدش توی خروجی خود برنامه اون کاراکتر رو نشون بده
مثلا توی برنامه عدد 6 رو بدم
بعد توی خروجی حرف a چاپ بشه
ممنون

ghafoori
سه شنبه 03 بهمن 1385, 14:06 عصر
دوست عزیز با این دستور


Char.ConvertFromUtf32(65)

این دستور کد یونیکد را گرفته کاراکتر را به شما تحویل می دهد

mahdi_o
سه شنبه 03 بهمن 1385, 14:32 عصر
دوست عزیز با این دستور


Char.ConvertFromUtf32(65)

این دستور کد یونیکد را گرفته کاراکتر را به شما تحویل می دهد

ممنو از شما
هنوز کد شما رو من امتحان نکردم
ولی این کد هم جواب دادش

Convert.ToChar(97+i)

mahdi_o
سه شنبه 03 بهمن 1385, 14:39 عصر
ممنون از همه
ولی مشکل اساسی من در این برنامه هستش

**
برنامه ای بنویسید که اولین روز سال 86 را گرفته و تقویم ماههای سال 86 را تولید نماید.
دراین برنامه باید متدی نوشته شود که با گرفتن شماره ماه، تقویم آن را چاپ نماید.

**

کمک کنید تا فردا صبح با تحویل بدم

ali_kolahdoozan
سه شنبه 03 بهمن 1385, 14:42 عصر
دوست عزیز با system.globalization برید . اما من نمیتونم همش رو براتون بنویسم فقط راهنمایی کردم

linux
سه شنبه 03 بهمن 1385, 15:58 عصر
ممنون از همه
ولی مشکل اساسی من در این برنامه هستش

**
برنامه ای بنویسید که اولین روز سال 86 را گرفته و تقویم ماههای سال 86 را تولید نماید.
دراین برنامه باید متدی نوشته شود که با گرفتن شماره ماه، تقویم آن را چاپ نماید.

**

کمک کنید تا فردا صبح با تحویل بدم
خوب این برنامه از قبلی هم سخت تره.
فرض کن روز اول سال 86 شنبه باشه. یعنی 1 فروردین شنبه هست
خوب 10 فروردین چه روزی هست؟
باقیمانده 10 بر 7 می شه 3 اگر شنبه را روز 0 در نظر بگیری 3 می شود دوشنبه. پس شما یک تابع می خواهی که روز هفته را تعین کنی که مثلا 25 اردیبهشت چه روزی میشه.
بعد یک تابع می خواهی که نشان بده مثلا 25 اردیبهشت روز چندم از سال هست. و ...

linux
سه شنبه 03 بهمن 1385, 16:43 عصر
using System;
using System.Collections.Generic;
using System.Text;
namespace Calendar
{
class Program
{
static int startday=0;
static string[] dayName = {"Shanbe","YekShanbe","doShanbe","Seshanbe","chaharshanbe","Panjshanbe","Jomeh"};

static void Main(string[] args)
{

Console.Write(dayName[dayofweek(DayofYear(10, 1))]);
Console.Read();
}
static int DayofYear(int d, int m)
{
int dy=0;
if (m < 7)
{ dy = (m - 1) * 31 + d; }
else if (m<12)
{dy = (m - 1) * 30 + d + 186;}
else if (m == 12)
{ dy = 336 + d; }
return dy;


}
static int dayofweek(int d)
{
return (d + startday -1) % 7;

}
}
}

تا اینجا برای پیدا کردن روزهای ماه بعدش هم باید یک آرایه داشته باشید که روزهای ماه را در آن نگهداری کنی