ورود

View Full Version : سوال: جارو برقی هوشمند با 4 اتاق



mohammadhafez
یک شنبه 28 مهر 1392, 21:30 عصر
سلام دوستان خسته نباشید

بنده یه پروژه جاروبرقی باید حل کنم تحویل استاد بدم ولی نمیدونم به چه شکل ؟ سوال به این گونه ست که 4 اتاق داریم ودرهر کدوم از اتاق ها اگه تمیز بود جاروبرقی به اونجا نره ولی اگه کثیف بود جاروبرقی اونجارو تمیز کنه یه حالت 0و1 داره تمیز بودن و کثیف بودنش حالا من نمیدون اینو به چه شکل با سی شارپ میشه نوشت؟
کسی از دوستان اگه داره سورس کدش رو محبت کنه یه یاری به ما برسونه ممنون میشم خیلی سخته

مرسی

youngold
یک شنبه 28 مهر 1392, 23:28 عصر
کدوم دانشگاهین شما؟ :متفکر:
یا چهار تا مقدار int داریم که به هر کدوم میشه صفر یا یک میدیم تو یه نامریک (حالا یا چهار تا بایت مثلاً) بعد یه متد جاروبرقی (مثلاً استاد خواسته شی گرایی رو با یه متد clear جاروبرقی تو یه کلاس جاروبرقی نشون بده :دی) بعد متد رو که اجرا میکنی این میره صفر ها رو یک میکنه ، اون چهار تا متغییر که مقدار میگیرن رو هم بزار توی یک آرایه بلکه یکم پیچیده بشه :چشمک: یا اینکه بحث کلاً سر شی گرایی باشه که بیایین برای هر اتاق یه کلاس بنویسید که توش یه متغییر عددی (به منظور تمیز یا کثیفی) باشه و یه متد جاروبرقی (که متغییر رو تغییر بده) که بعد چهار تا ازین شی درست کنید بزارید توی یه آرایه
اینم نشد همون کلاس اتاق و مخلفاتش رو در نظر بگیرید با یک متد جاروبرقی بیرون از کلاس اتاق، که شی اتاق رو پارامتر دریافت میکنه و تمیزش میکنه!
غیر از این حالات احتمالاً باید این مسئله رو توی راکتور اتمی پیاده سازی کنی!

youngold
یک شنبه 28 مهر 1392, 23:30 عصر
خوب یکم بیشتر سوال میکردی
اگه قراره اینا رو فرم نمایش داده بشه توی کلاس اتاق ها پراپرتی بزاری که صفر یا یک با این تغییر کنه و هنگام تغییر روی فرم نمیدونم مثلاً یه لیبل به نام اتاق تغییر کنه..

+ احساس بدی دارم که با این تاپیک جواب دادم

mohammadhafez
شنبه 04 آبان 1392, 14:45 عصر
من تا یه جایی این کد رو نوشتم با دو اتاق ولی نمیدونم با چه دستوری توی اتاق دومی اشغال بزارم و برنامه خودکار تشخیص بده اونجا کثیفه و تمیزش کنه یکی از دوستان کمک کنه ممنون میشم با سی شارپ نوشتم



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 jaro_barghi
{
public partial class Form1 : Form
{
Graphics g;
Point[] points;
int x = 50;
int r = 0;

public Form1()
{
InitializeComponent();
}

private void Form1_Load(object sender, EventArgs e)
{
g = CreateGraphics();
points = new Point[]{
new Point(50,50),
new Point(250,50),
new Point(250,100),
new Point(260,100),
new Point(260,50),
new Point(460,50),
new Point(460,200),
new Point(260,200),
new Point(260,150),
new Point(250,150),
new Point(250,200),
new Point(50,200),
new Point(50,50)
};
timer1.Start();
}

private void button1_Click(object sender, EventArgs e)
{
timer1.Start();
}

private void timer1_Tick(object sender, EventArgs e)
{
g.Clear(Color.White);
g.ResetTransform();

g.DrawLines(Pens.Black, points);

g.TranslateTransform(x, 100);
g.RotateTransform(r);

g.FillEllipse(Brushes.Blue, -15, -15, 30, 30);
g.DrawLine(Pens.Red, 0, 0, 15, 15);
if (x < 400)
x += 4;
r += 10;
}
}
}