الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

ساعه رقمية بدوال الرسم في السي

بدأه نسرينا123 في 18 أغسطس 2007 · 24 رد · 6,090 مشاهدة · في الأسئلة المجابة
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

انا قبل يومين عملت تسال لحد يساعدني في عمل ساعه رقمية

بس اتفاجات انه تم اقفاله ... مع اني ما بدي حد يعمله ولكن يساعدني فيه

انا حاولت وعملت وراح اعطيكم الكود بس فيه مشكله ارجو من اعضاء المنتدي انه يساعدني

في حل المشكله تبعي وركزوا المخرجات كيف بتكون ويايت تساعدوني بحله باسرع وقت ممكن

لاني مابدي حد يعمله بس يساعدني في حله

وإليكم الكود :-

#include<iostream.h>
#include<graphics.h>
#include<math.h> 



int main()
{
	char msg[50]; 
	int i=10;
	char msg1[50];
	char msg2[50];
	initwindow(600,600);
	 setfillstyle(1,5); //background color
	 floodfill(400,400,15);//background color
	//////////////////////////
   setfillstyle(1,0);
	 rectangle(100,300,500,100);
	 floodfill(200,200,15);
	////////////////////////////
	setfillstyle(1,9);
	rectangle(150,150,450,250);
	floodfill(200,200,15);
////////////////////////////////////////////////


   for(int i=0;i<=12;i++)
	{
			delay(1000);
		   for(int y=0;y<=59;y++)
		   {
					delay(500);
					void clear();
				   for(int z=0;z<=60;z++)
				   {

					delay(100);
					itoa(z,msg2,10);
					//////////////////////////
					itoa(i,msg,10);		 
					itoa(y,msg1,10);	  
					settextstyle(3,0,5);
				   outtextxy(380,190,msg2);
				   outtextxy(220,190,msg);
				   outtextxy(300,190,msg1);
				   }  

			 }

	}

	while(!kbhit());
	return 0;
}

تم تعديل هذه المشاركة بواسطة Ben_Laiid في 19 أغسطس 2007 في 00:25

#2

السلام عليكم

لقد قمت بغلق الموضوع السابق لعدم إرفاق محاولتك مع الطلب

هل بإمكانك رفع المكتبة graphics.hهنا؟

#3

شكرا سيدي على ردك السريع

ولكن لم استطيع تحميل الملف لوجود غلط

فساحاول ان ادلك على موقع تنزيل المكتبه فارجو

سيدي العزيز المساعدة.. ارجوك وشكراhttp:\\www.koders.com/cpp

www.koders.com/cpp

#4

جربي هذا الكود

بامكانك التعديل فيه بحيث يتناسب مع ما تريدين

لم أضع شرح للكود لأنه مفهوم وأي دوال غير معروفة عليك الرجوع لـ Turbo C Help للإطلاع على شرح الدوال وأي تساؤلات يمكن وضعها هنا

//#include<iostream.h>
#include<graphics.h>
//#include<math.h>
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
#include <dos.h>
#include <bios.h>
#include <time.h>

int main()
{
	/*char hours[3];
	char minutes[3];
	char seconds[2]; */
	char thetime[8];
	struct   tm   *now;
	long   secs_now;

	struct linesettingstype lineinfo;
 /* request auto detection */
   int gdriver = DETECT, gmode, errorcode;
/* initialize graphics and local variables */
// change pathtodriver to the correct path, or let the user input the correct path
   initgraph(&gdriver, &gmode, "E:\\TC\\BGI\\");

/* read result of initialization */
   errorcode = graphresult();
/* an error occurred */
   if (errorcode != grOk)
   {
	  printf("Graphics error: %s\n", grapherrormsg(errorcode));
	  printf("Press any key to halt:");
	  getch();
/* terminate with an error code */
	  exit(1);
   }
	//initwindow(600,600);

	 setfillstyle(1,5); //background color
	 floodfill(400,400,15);//background color
	//////////////////////////
	 setfillstyle(1,0);
	 rectangle(100,300,500,100);
	 floodfill(200,200,15);
	////////////////////////////
	setfillstyle(1,9);
	rectangle(150,150,450,250);
	floodfill(200,200,15);
	getlinesettings(&lineinfo);

	setviewport(150+lineinfo.thickness,150+lineinfo.thickness,
	450-lineinfo.thickness,250-lineinfo.thickness,0);
	time(&secs_now);
	now=localtime(&secs_now);
////////////////////////////////////////////////
  while(bioskey(1)==0)
  //while(!kbhit())
  {
	clearviewport();
	setfillstyle(1,9);
	bar(0,0,300-(lineinfo.thickness*2),100-(lineinfo.thickness*2));
	 if(now->tm_sec ==60)
	 {
	  now->tm_sec=0;
	  now->tm_min++;
	 }

	 if(now->tm_min==60)
	 {
	now->tm_min=0;
	now->tm_hour++;
	 }
	 if(now->tm_hour>=12)   now->tm_hour-=12;
	 /*sprintf(seconds,"%02d",now->tm_sec);
	 sprintf(minutes,"%02d:",now->tm_min);
	 sprintf(hours,"%02d:",now->tm_hour); */
	 sprintf(thetime,"%02d:%02d:%02d",now->tm_hour,now->tm_min,now->tm_sec);

	 setcolor(WHITE);
	 settextstyle(3,0,5);
	 /*outtextxy(30,20,hours);
	 outtextxy(130,20,minutes);
	 outtextxy(230,20,seconds);*/
	 outtextxy(50,20,thetime);
	 //gotoxy(1,1);
	 //printf("The   current   time   is   %02d:%02d:%02d",now->tm_hour,now->tm_min,now->tm_sec);
	 sleep(1);
	 now->tm_sec++;
  }
	closegraph();
	return 0;
}

"First they ignore you, then they laugh at you, then they attack you, then you win"

===

اقتباس

حُكَّامُـنَا إِنْ تَصَـدّوا لِلْحِمَــى اقْتَحَمُـوا ***** وَإِنْ تَصَدَّى لَـهُ المُسْتَعْمِـرُ انْسَحَبُـوا

هُمْ يَفْرشـُونَ لِجَيْـشِ الغَــزْوِ أَعْيُنَـهُـمْ ***** وَيَدَّعُــونَ وُثُـوبَـاً قَـبْـلَ أَنْ يَثِـبُــوا

الحَاكِمُـونَ و«وَاشُنْـطُـنْ» حُكُومَتُـهُـمْ ***** وَاللامِعُــونَ وَمَـا شَعَّـوا وَلا غَرَبُــوا

القَاتِلُـــونَ نُبُــوغَ الشَّـعْــبِ تَرْضِـيَـــةً ***** لِلْمُعْتَدِيــنَ وَمَـا أَجْـدَتْـهُـمُ الـقُــرَبُ

لَهُمْ شُمُـوخُ «المُثَنَّـى» ظَاهِـرَاً وَلَهُـمْ ***** هَـوَىً إِلَـى بَابَـك الخَرْمِـيّ يُنْتَسَـبُ

البردوني "أبو تمام وعروبة اليوم" 1971

===

اقتباس
عبيد الهوى يحكمون البـلاد ***** ويحكمهــم كلّهـــم درهــــــم

و تقتـادهـم شهـوة لا تنــام ***** وهـــم فـي جـهالتهــم نــــوّم

ففــي كـــلّ ناحيــة ظـالـــم ***** غبــــــيّ يسـلـّطــــه أظلـــم

أيا من شبعتم على جوعــنا ***** وجـــوع بنينـا ألـم تتخمـــوا ؟

ألم تفهموا غضبة الكادحين ***** على الظلـم ؟ لا بدّ أن تفهموا

البردوني "نحن و الحاكمون "

#5

انا نسرينا بشكرك كثيييير يا استاذي العزيز Cipher للكود اللي

جيبته بس بلييييز بحسه فيه شوية تعقيدات يا سيدي العزيز لو بتقدر ممكن

تشرح الكود يا استاذي العزيز

وانا منتضرة ردك السريع وياريت تنزل معك المكتبة bios.h

وجزاك الله الف خير

#6

ما هو الـ compiler الذي تستعميلنه؟

إن كان Bios.H غير موجود فقومي بالتغييرات الآتية

التخلص من هذا السطر

//#include <bios.h>

إستخدامkbhit بدلاً عن bioskey ....

// while(bioskey(1)==0)
while(!kbhit())

هل البرنامج إشتغل بالصورة التي تريدينها؟

ما النقاط التي تعتقدي أنها معقدة؟

"First they ignore you, then they laugh at you, then they attack you, then you win"

===

اقتباس

حُكَّامُـنَا إِنْ تَصَـدّوا لِلْحِمَــى اقْتَحَمُـوا ***** وَإِنْ تَصَدَّى لَـهُ المُسْتَعْمِـرُ انْسَحَبُـوا

هُمْ يَفْرشـُونَ لِجَيْـشِ الغَــزْوِ أَعْيُنَـهُـمْ ***** وَيَدَّعُــونَ وُثُـوبَـاً قَـبْـلَ أَنْ يَثِـبُــوا

الحَاكِمُـونَ و«وَاشُنْـطُـنْ» حُكُومَتُـهُـمْ ***** وَاللامِعُــونَ وَمَـا شَعَّـوا وَلا غَرَبُــوا

القَاتِلُـــونَ نُبُــوغَ الشَّـعْــبِ تَرْضِـيَـــةً ***** لِلْمُعْتَدِيــنَ وَمَـا أَجْـدَتْـهُـمُ الـقُــرَبُ

لَهُمْ شُمُـوخُ «المُثَنَّـى» ظَاهِـرَاً وَلَهُـمْ ***** هَـوَىً إِلَـى بَابَـك الخَرْمِـيّ يُنْتَسَـبُ

البردوني "أبو تمام وعروبة اليوم" 1971

===

اقتباس
عبيد الهوى يحكمون البـلاد ***** ويحكمهــم كلّهـــم درهــــــم

و تقتـادهـم شهـوة لا تنــام ***** وهـــم فـي جـهالتهــم نــــوّم

ففــي كـــلّ ناحيــة ظـالـــم ***** غبــــــيّ يسـلـّطــــه أظلـــم

أيا من شبعتم على جوعــنا ***** وجـــوع بنينـا ألـم تتخمـــوا ؟

ألم تفهموا غضبة الكادحين ***** على الظلـم ؟ لا بدّ أن تفهموا

البردوني "نحن و الحاكمون "

#7

شكرا سيدي العزيز على الكود

والبرنامج استغل بالصورة الذي اريدها نعم

يبقى عليا فهم بعض النقاط وفهم البونترز الموجودة

في البرنامج ايميلي موجود tozz2005@yahoo.com

اذا اردت الدخول وشرحة او ارسال الشرح لللإيميل

مع انني افضل ان يكون في الموقع لكي يستفيد الكل

ومشكووووووووووور

وجزاك الله الف خير

#8

اهم النقاط هي التي تعتمد على دوال الوقت

time(&secs_now);
now=localtime(&secs_now);

وهي للحصول على الوقت الحالي , راجعي عمل الدالتين من الـ help

الاولى لإعطاء الوقت بالثواني منذ 1 يناير 1970 والثانية لتحويل القيمة السابقة الى التوقيت الحالي باعطاء التاريخ (يوم , شهر , سنة) والوقت (ساعة ,دقيقة , ثانية ) ...

	if(now->tm_sec ==60)
	 {
	  now->tm_sec=0;
	  now->tm_min++;
	 }

في حالة الوصول الى دقيقة يتم تحويل الثواني الى 0 وزيادة الدقائق 1

	 if(now->tm_min==60)
	 {
	now->tm_min=0;
	now->tm_hour++;
	 }

في حالة الوصول الى ساعة يتم تحويل الدقائق الى 0 وزيادة الساعات 1

	 if(now->tm_hour>=12)   now->tm_hour-=12;

إذا كنا نريد الوقت يعتمد على 12 ساعة

	sleep(1);
	 now->tm_sec++;

توقيف البرنامج عن العمل لمدة ثانية ومن ثم يتم تزويد الثواني بمقدار 1

هذا هي أهم النقاط

وبالنسبة لدوال الرسم فالشرح في الـ Help أكثر من واضح وفيه أمثلة على كل دالة ...

"First they ignore you, then they laugh at you, then they attack you, then you win"

===

اقتباس

حُكَّامُـنَا إِنْ تَصَـدّوا لِلْحِمَــى اقْتَحَمُـوا ***** وَإِنْ تَصَدَّى لَـهُ المُسْتَعْمِـرُ انْسَحَبُـوا

هُمْ يَفْرشـُونَ لِجَيْـشِ الغَــزْوِ أَعْيُنَـهُـمْ ***** وَيَدَّعُــونَ وُثُـوبَـاً قَـبْـلَ أَنْ يَثِـبُــوا

الحَاكِمُـونَ و«وَاشُنْـطُـنْ» حُكُومَتُـهُـمْ ***** وَاللامِعُــونَ وَمَـا شَعَّـوا وَلا غَرَبُــوا

القَاتِلُـــونَ نُبُــوغَ الشَّـعْــبِ تَرْضِـيَـــةً ***** لِلْمُعْتَدِيــنَ وَمَـا أَجْـدَتْـهُـمُ الـقُــرَبُ

لَهُمْ شُمُـوخُ «المُثَنَّـى» ظَاهِـرَاً وَلَهُـمْ ***** هَـوَىً إِلَـى بَابَـك الخَرْمِـيّ يُنْتَسَـبُ

البردوني "أبو تمام وعروبة اليوم" 1971

===

اقتباس
عبيد الهوى يحكمون البـلاد ***** ويحكمهــم كلّهـــم درهــــــم

و تقتـادهـم شهـوة لا تنــام ***** وهـــم فـي جـهالتهــم نــــوّم

ففــي كـــلّ ناحيــة ظـالـــم ***** غبــــــيّ يسـلـّطــــه أظلـــم

أيا من شبعتم على جوعــنا ***** وجـــوع بنينـا ألـم تتخمـــوا ؟

ألم تفهموا غضبة الكادحين ***** على الظلـم ؟ لا بدّ أن تفهموا

البردوني "نحن و الحاكمون "

#9

عفوا وسوال سيدي العزيز

هل في هذا البرنامج انا اقوم باستعادة الوقت من الجهاز

يعني الوقت الحالي ....ولكن اذا اردت انا ان اقوم بتصميم

الوقت واجعل مثلا الوقت يبدء من 12 يعني ليش له علاقة بوقت الجهاز

مثلا

هل ممكن عن طريق هذا البرنامج أرجو الإجابة

ومشكووووووور ولن انسى هذا المساعدة ابدا

#10
اقتباس
هل في هذا البرنامج انا اقوم باستعادة الوقت من الجهاز

نعم

اقتباس
ولكن اذا اردت انا ان اقوم بتصميم

الوقت واجعل مثلا الوقت يبدء من 12 يعني ليش له علاقة بوقت الجهاز

مثلا

هل ممكن عن طريق هذا البرنامج أرجو الإجابة

ممكن .. ستحتاجين لعمل بعض تعديلات ...

لن تحتاجين حينها لـ

time(&secs_now);
now=localtime(&secs_now);

عليك تعريف struct جديد فيه العناصر الثلاث (ساعات , دقائق , ثواني) بحيث تعطي القيم الإبتدائية التي تريدينها ومن ثم تتابعين نفس البرنامج ...

هنا بعض التعديلات

تعريف الـ struct الخاص بنا

struct time_str
{
int tm_sec;
int tm_min;
int tm_hour;
}ourtime;

تغيير في التصريح

//struct   tm   *now;
struct ourtime *now

ثم يتم إعطاء القيم الإبتدائية المرادة .. وعمل التغييرات المرادة في بقية الكود ..

تم تعديل هذه المشاركة بواسطة cipher في 19 أغسطس 2007 في 19:52

"First they ignore you, then they laugh at you, then they attack you, then you win"

===

اقتباس

حُكَّامُـنَا إِنْ تَصَـدّوا لِلْحِمَــى اقْتَحَمُـوا ***** وَإِنْ تَصَدَّى لَـهُ المُسْتَعْمِـرُ انْسَحَبُـوا

هُمْ يَفْرشـُونَ لِجَيْـشِ الغَــزْوِ أَعْيُنَـهُـمْ ***** وَيَدَّعُــونَ وُثُـوبَـاً قَـبْـلَ أَنْ يَثِـبُــوا

الحَاكِمُـونَ و«وَاشُنْـطُـنْ» حُكُومَتُـهُـمْ ***** وَاللامِعُــونَ وَمَـا شَعَّـوا وَلا غَرَبُــوا

القَاتِلُـــونَ نُبُــوغَ الشَّـعْــبِ تَرْضِـيَـــةً ***** لِلْمُعْتَدِيــنَ وَمَـا أَجْـدَتْـهُـمُ الـقُــرَبُ

لَهُمْ شُمُـوخُ «المُثَنَّـى» ظَاهِـرَاً وَلَهُـمْ ***** هَـوَىً إِلَـى بَابَـك الخَرْمِـيّ يُنْتَسَـبُ

البردوني "أبو تمام وعروبة اليوم" 1971

===

اقتباس
عبيد الهوى يحكمون البـلاد ***** ويحكمهــم كلّهـــم درهــــــم

و تقتـادهـم شهـوة لا تنــام ***** وهـــم فـي جـهالتهــم نــــوّم

ففــي كـــلّ ناحيــة ظـالـــم ***** غبــــــيّ يسـلـّطــــه أظلـــم

أيا من شبعتم على جوعــنا ***** وجـــوع بنينـا ألـم تتخمـــوا ؟

ألم تفهموا غضبة الكادحين ***** على الظلـم ؟ لا بدّ أن تفهموا

البردوني "نحن و الحاكمون "

#11

السلام عليكم

cipherهل بإمكانك رفع نسخة ل graphics.h للفيزوال ستوديو أو Dev C++لأني لم أستطع متابعة الكود منذ البداية بسبب عدم توفرها

#12

سيدي العزيز قمت بالتعديلات التي اخبرتني عليها

لجعل الوقت انا اقوم بانشاء ولكن دون جدى صحح لي

ارجوك ...انا في الانتظار وإليك الكود

//#include<iostream.h>

#include<graphics.h>

//#include<math.h>

#include <stdio.h>

#include <conio.h>

#include <stdlib.h>

#include <dos.h>

//#include <bios.h>

#include <time.h>

int main()

{

char thetime[8];

//struct tm *now;

struct ourtime *now;

long secs_now;

// struct linesettingstype lineinfo;

struct time_str

{

int tm_sec;

int tm_min;

int tm_hour;

}ourtime;

/* request auto detection */

int gdriver = DETECT, gmode, errorcode;

/* initialize graphics and local variables */

// change pathtodriver to the correct path, or let the user input the correct path

initgraph(&gdriver, &gmode, "E:\\TC\\BGI\\");

/* read result of initialization */

errorcode = graphresult();

/* an error occurred */

if (errorcode != grOk)

{

printf("Graphics error: %s\n", grapherrormsg(errorcode));

printf("Press any key to halt:");

getch();

/* terminate with an error code */

exit(1);

}

initwindow(600,600);

setfillstyle(1,5); //background color

floodfill(400,400,15);//background color

//////////////////////////

setfillstyle(1,0);

rectangle(100,300,500,100);

floodfill(200,200,15);

////////////////////////////

setfillstyle(1,9);

rectangle(150,150,450,250);

floodfill(200,200,15);

//getlinesettings(&lineinfo);

/* setviewport(150+lineinfo.thickness,150+lineinfo.thickness,

450-lineinfo.thickness,250-lineinfo.thickness,0);

/* time(&secs_now);*/

// now=localtime(&secs_now);*/

////////////////////////////////////////////////

while(!kbhit())

{

clearviewport();

setfillstyle(1,9);

// bar(0,0,300-(lineinfo.thickness*2),100-(lineinfo.thickness*2));

if(now->tm_sec ==60)

{

now->tm_sec=0;

now->tm_min++;

}

if(now->tm_min==60)

{

now->tm_min=0;

now->tm_hour++;

}

if(now->tm_hour>=12) now->tm_hour-=12;

sprintf(thetime,"%02d:%02d:%02d",now->tm_hour,now->tm_min,now->tm_sec);

setcolor(WHITE);

settextstyle(3,0,5);

outtextxy(50,20,thetime);

delay(500);

now->tm_sec++;

}

closegraph();

return 0;

}

#13
اقتباس
cipherهل بإمكانك رفع نسخة ل graphics.h للفيزوال ستوديو أو Dev C++لأني لم أستطع متابعة الكود منذ البداية بسبب عدم توفرها

هذا الملف خاص بـ Borland Graphics Interface BGI وهو للـ DOS ... أعتقد أن هناك نسخة من الـ لBGI للويندوز ... سابحث عنها و أجرب وأطلعك بالنتائج ..

//#include<iostream.h>
#include<graphics.h>
//#include<math.h>
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
#include <dos.h>
//#include <bios.h>
//#include <time.h>
//declaration
typedef struct time_str
{
int tm_sec;
int tm_min;
int tm_hour;
}ourtime;
int main()
{

char thetime[8];
//struct tm *now;
ourtime *now;
long secs_now;

struct linesettingstype lineinfo;

/* request auto detection */
int gdriver = DETECT, gmode, errorcode;
/* initialize graphics and local variables */
// change pathtodriver to the correct path, or let the user input the correct path
initgraph(&gdriver, &gmode, "E:\\TC\\BGI\\");

/* read result of initialization */
errorcode = graphresult();
/* an error occurred */
if (errorcode != grOk)
{
printf("Graphics error: %s\n", grapherrormsg(errorcode));
printf("Press any key to halt:");
getch();
/* terminate with an error code */
exit(1);
}
//initwindow(600,600);
//allocate memory and initialize
if((now=(ourtime*)malloc(sizeof(ourtime)))==NULL)
{
printf("Memorry allocation error!\n");
exit(1);
}
now->tm_hour=12;
now->tm_min=0;
now->tm_sec=0;
setfillstyle(1,5); //background color
floodfill(400,400,15);//background color
//////////////////////////
setfillstyle(1,0);
rectangle(100,300,500,100);
floodfill(200,200,15);
////////////////////////////
setfillstyle(1,9);
rectangle(150,150,450,250);
floodfill(200,200,15);
getlinesettings(&lineinfo);

 setviewport(150+lineinfo.thickness,150+lineinfo.thickness,
450-lineinfo.thickness,250-lineinfo.thickness,0);
/* time(&secs_now);*/
// now=localtime(&secs_now);
////////////////////////////////////////////////
while(!kbhit())
{
clearviewport();
setfillstyle(1,9);
bar(0,0,300-(lineinfo.thickness*2),100-(lineinfo.thickness*2));
if(now->tm_sec ==60)
{
now->tm_sec=0;
now->tm_min++;
}

if(now->tm_min==60)
{
now->tm_min=0;
now->tm_hour++;
}
if(now->tm_hour>12) now->tm_hour-=12;

sprintf(thetime,"%02d:%02d:%02d",now->tm_hour,now->tm_min,now->tm_sec);

setcolor(WHITE);
settextstyle(3,0,5);

outtextxy(50,20,thetime);

//delay(500);
sleep(1);
now->tm_sec++;
}
closegraph();
return 0;
}

التصريح بالـ struct يجب أن يكون قبل تعريف متغير من نوعه ..

حيث أننا عرفنا متغير من نوع مؤشر فيجب حجز ذاكرة يؤشر عليها ومن ثم يتم إعطاء القيم الإبتدائية للعناصر...

هناك تعديل في جملة الشرط الآتية

if(now->tm_hour>12) now->tm_hour-=12;

إذا كنت تريدين إستعمال delay فيجب أن يكون الـ interval بقدر 1000 لان 1ثانية =1000 ملي ثانية ..

"First they ignore you, then they laugh at you, then they attack you, then you win"

===

اقتباس

حُكَّامُـنَا إِنْ تَصَـدّوا لِلْحِمَــى اقْتَحَمُـوا ***** وَإِنْ تَصَدَّى لَـهُ المُسْتَعْمِـرُ انْسَحَبُـوا

هُمْ يَفْرشـُونَ لِجَيْـشِ الغَــزْوِ أَعْيُنَـهُـمْ ***** وَيَدَّعُــونَ وُثُـوبَـاً قَـبْـلَ أَنْ يَثِـبُــوا

الحَاكِمُـونَ و«وَاشُنْـطُـنْ» حُكُومَتُـهُـمْ ***** وَاللامِعُــونَ وَمَـا شَعَّـوا وَلا غَرَبُــوا

القَاتِلُـــونَ نُبُــوغَ الشَّـعْــبِ تَرْضِـيَـــةً ***** لِلْمُعْتَدِيــنَ وَمَـا أَجْـدَتْـهُـمُ الـقُــرَبُ

لَهُمْ شُمُـوخُ «المُثَنَّـى» ظَاهِـرَاً وَلَهُـمْ ***** هَـوَىً إِلَـى بَابَـك الخَرْمِـيّ يُنْتَسَـبُ

البردوني "أبو تمام وعروبة اليوم" 1971

===

اقتباس
عبيد الهوى يحكمون البـلاد ***** ويحكمهــم كلّهـــم درهــــــم

و تقتـادهـم شهـوة لا تنــام ***** وهـــم فـي جـهالتهــم نــــوّم

ففــي كـــلّ ناحيــة ظـالـــم ***** غبــــــيّ يسـلـّطــــه أظلـــم

أيا من شبعتم على جوعــنا ***** وجـــوع بنينـا ألـم تتخمـــوا ؟

ألم تفهموا غضبة الكادحين ***** على الظلـم ؟ لا بدّ أن تفهموا

البردوني "نحن و الحاكمون "

#14

Ben_Laiid:

جرب هذا

Borland BGI Graphics and Mouse For Windows Applications

"First they ignore you, then they laugh at you, then they attack you, then you win"

===

اقتباس

حُكَّامُـنَا إِنْ تَصَـدّوا لِلْحِمَــى اقْتَحَمُـوا ***** وَإِنْ تَصَدَّى لَـهُ المُسْتَعْمِـرُ انْسَحَبُـوا

هُمْ يَفْرشـُونَ لِجَيْـشِ الغَــزْوِ أَعْيُنَـهُـمْ ***** وَيَدَّعُــونَ وُثُـوبَـاً قَـبْـلَ أَنْ يَثِـبُــوا

الحَاكِمُـونَ و«وَاشُنْـطُـنْ» حُكُومَتُـهُـمْ ***** وَاللامِعُــونَ وَمَـا شَعَّـوا وَلا غَرَبُــوا

القَاتِلُـــونَ نُبُــوغَ الشَّـعْــبِ تَرْضِـيَـــةً ***** لِلْمُعْتَدِيــنَ وَمَـا أَجْـدَتْـهُـمُ الـقُــرَبُ

لَهُمْ شُمُـوخُ «المُثَنَّـى» ظَاهِـرَاً وَلَهُـمْ ***** هَـوَىً إِلَـى بَابَـك الخَرْمِـيّ يُنْتَسَـبُ

البردوني "أبو تمام وعروبة اليوم" 1971

===

اقتباس
عبيد الهوى يحكمون البـلاد ***** ويحكمهــم كلّهـــم درهــــــم

و تقتـادهـم شهـوة لا تنــام ***** وهـــم فـي جـهالتهــم نــــوّم

ففــي كـــلّ ناحيــة ظـالـــم ***** غبــــــيّ يسـلـّطــــه أظلـــم

أيا من شبعتم على جوعــنا ***** وجـــوع بنينـا ألـم تتخمـــوا ؟

ألم تفهموا غضبة الكادحين ***** على الظلـم ؟ لا بدّ أن تفهموا

البردوني "نحن و الحاكمون "

#15

شكرا سيدي العزيز والله جمايلك مغرقانه

بس ان شاء الله يكون السؤال الاخير ممكن اعرف

المقطع اللي allocate memory and initialization بيعمل ايه

يعني وهل البرنامج راح يشتغل اذا حذفت هالمقطع

ومشكوووووور يا سيدي الغالي والعزيز Cipher

#16

لدي سؤال اخر ماذا يعمل linesettingstype عند تعريفه واستخدامه

وايضا هذا المقطع لم استطع ان افهمه وماذا يعمل ؟؟؟

setviewport(150+lineinfo.thickness,150+lineinfo.thickness,

450-lineinfo.thickness,250-lineinfo.thickness,0);

لانني كلما قمت بحذفه يقوم بتغييير مكان ظهور الساعه

ومشككككككككككككوررر سيدي الغالي

#17
اقتباس
المقطع اللي allocate memory and initialization بيعمل ايه

يعني وهل البرنامج راح يشتغل اذا حذفت هالمقطع

لا ينبغي حذف ذلك الجزء ..

حيث أننا قمنا بتعريف المتغير على شكل مؤشر فيجب حجز ذاكرة للجزء الذي يؤشر إليه ..

بإمكاننا الإستغناء عن ذلك في حالة تعريف متغير وليس مؤشر

ourtime now;

حينها سنحتاج لإستبدال السهم (->) بالنقطة( .) وسنستغني عن الكود الخاص بالـ allocation فقط ..

اقتباس
لدي سؤال اخر ماذا يعمل linesettingstype عند تعريفه واستخدامه

هذا يعطينا معلومات الرسم وما يهمنا هنا درجة عرض الخط thickness ....

اقتباس
وايضا هذا المقطع لم استطع ان افهمه وماذا يعمل ؟؟؟

setviewport(150+lineinfo.thickness,150+lineinfo.thickness,

450-lineinfo.thickness,250-lineinfo.thickness,0);

لانني كلما قمت بحذفه يقوم بتغييير مكان ظهور الساعه

لم تقرئي الـ help وإلا ستعرفين الغرض من إستخدام تلك الدالة ... راجعي الـ Help مرة أخرى ...

"First they ignore you, then they laugh at you, then they attack you, then you win"

===

اقتباس

حُكَّامُـنَا إِنْ تَصَـدّوا لِلْحِمَــى اقْتَحَمُـوا ***** وَإِنْ تَصَدَّى لَـهُ المُسْتَعْمِـرُ انْسَحَبُـوا

هُمْ يَفْرشـُونَ لِجَيْـشِ الغَــزْوِ أَعْيُنَـهُـمْ ***** وَيَدَّعُــونَ وُثُـوبَـاً قَـبْـلَ أَنْ يَثِـبُــوا

الحَاكِمُـونَ و«وَاشُنْـطُـنْ» حُكُومَتُـهُـمْ ***** وَاللامِعُــونَ وَمَـا شَعَّـوا وَلا غَرَبُــوا

القَاتِلُـــونَ نُبُــوغَ الشَّـعْــبِ تَرْضِـيَـــةً ***** لِلْمُعْتَدِيــنَ وَمَـا أَجْـدَتْـهُـمُ الـقُــرَبُ

لَهُمْ شُمُـوخُ «المُثَنَّـى» ظَاهِـرَاً وَلَهُـمْ ***** هَـوَىً إِلَـى بَابَـك الخَرْمِـيّ يُنْتَسَـبُ

البردوني "أبو تمام وعروبة اليوم" 1971

===

اقتباس
عبيد الهوى يحكمون البـلاد ***** ويحكمهــم كلّهـــم درهــــــم

و تقتـادهـم شهـوة لا تنــام ***** وهـــم فـي جـهالتهــم نــــوّم

ففــي كـــلّ ناحيــة ظـالـــم ***** غبــــــيّ يسـلـّطــــه أظلـــم

أيا من شبعتم على جوعــنا ***** وجـــوع بنينـا ألـم تتخمـــوا ؟

ألم تفهموا غضبة الكادحين ***** على الظلـم ؟ لا بدّ أن تفهموا

البردوني "نحن و الحاكمون "

#18

شكرا سيدي العزيز cipher على مساعدتي في عمل هذا المشروع

وقد قمت بالتغيير الكثير في البرنامج لكي يتلاءم معي لانني لست خبيرة سي بلس بلس

فانا مازلت مبتدى وقمت بتغيير البونترز إلى متغيرات عادية ...فبعد ما قمت بتقديمة

فوجت انا المطلوب هو رسم الارقام وعرضها كساعه

وفكرتها ان اقوم برسم كل رقم في داله procedure ومن ثم استدعاءها

انا الان اقوم بعمل هذة اي رسم الارقام ولكن المشكله عندي هنا هو استدعاءها

اي استدعاء كل procedure وكانه ساعه وعملية اظهارها

هل يمكن لاي شخص ان يساعدني في ذلك

ارجو من إدارة المنتدى ان لاتغلق الموضوع لانني فقط اريد رد من الاعضاء (نعم او لا) إن شاء الله

عندما انهي قريبا عمل هذة الدوال سوف اقوم بتنزيل الكود كاااااملا على المنتدى ....

#19
اقتباس
فبعد ما قمت بتقديمة

فوجت انا المطلوب هو رسم الارقام وعرضها كساعه

وفكرتها ان اقوم برسم كل رقم في داله procedure ومن ثم استدعاءها

انا الان اقوم بعمل هذة اي رسم الارقام ولكن المشكله عندي هنا هو استدعاءها

اي استدعاء كل procedure وكانه ساعه وعملية اظهارها

لم أفهم المقصود بما سبق ..

هل المطلوب رسم ساعة بعقارب؟

لدي مثال على ذلك (لست من كتب المثال :) )

تم تعديل هذه المشاركة بواسطة cipher في 23 أغسطس 2007 في 18:57

"First they ignore you, then they laugh at you, then they attack you, then you win"

===

اقتباس

حُكَّامُـنَا إِنْ تَصَـدّوا لِلْحِمَــى اقْتَحَمُـوا ***** وَإِنْ تَصَدَّى لَـهُ المُسْتَعْمِـرُ انْسَحَبُـوا

هُمْ يَفْرشـُونَ لِجَيْـشِ الغَــزْوِ أَعْيُنَـهُـمْ ***** وَيَدَّعُــونَ وُثُـوبَـاً قَـبْـلَ أَنْ يَثِـبُــوا

الحَاكِمُـونَ و«وَاشُنْـطُـنْ» حُكُومَتُـهُـمْ ***** وَاللامِعُــونَ وَمَـا شَعَّـوا وَلا غَرَبُــوا

القَاتِلُـــونَ نُبُــوغَ الشَّـعْــبِ تَرْضِـيَـــةً ***** لِلْمُعْتَدِيــنَ وَمَـا أَجْـدَتْـهُـمُ الـقُــرَبُ

لَهُمْ شُمُـوخُ «المُثَنَّـى» ظَاهِـرَاً وَلَهُـمْ ***** هَـوَىً إِلَـى بَابَـك الخَرْمِـيّ يُنْتَسَـبُ

البردوني "أبو تمام وعروبة اليوم" 1971

===

اقتباس
عبيد الهوى يحكمون البـلاد ***** ويحكمهــم كلّهـــم درهــــــم

و تقتـادهـم شهـوة لا تنــام ***** وهـــم فـي جـهالتهــم نــــوّم

ففــي كـــلّ ناحيــة ظـالـــم ***** غبــــــيّ يسـلـّطــــه أظلـــم

أيا من شبعتم على جوعــنا ***** وجـــوع بنينـا ألـم تتخمـــوا ؟

ألم تفهموا غضبة الكادحين ***** على الظلـم ؟ لا بدّ أن تفهموا

البردوني "نحن و الحاكمون "

#20

المقصود هو رسم الارقام يعني عمل داله ترسم الصفر وداله ترسم 1 ودالة ترسم 2 وهكذا

واستدعاءها في مكان عرض الساعه ؟؟؟ في جمله ال

if في الكود يعني استدعي الداله التي ترسم الصفر والواحد وووو وكانها ساعه

تشتغل وتقلب

وياريت لو توريني ساعه العقارب تبعك

وترد عليا باقصى سرعه لاني شويا واخلص ارسم الارقام

وشكرا ياسيدي الغالي والعزيز

#21

لا أظن أن مسألة رسم الأرقام معقدة فقط حاولي وضعي المحاولة هنا ...

المثال في المرفقات ...

CLOCK1.zip

تم تعديل هذه المشاركة بواسطة cipher في 24 أغسطس 2007 في 05:11

"First they ignore you, then they laugh at you, then they attack you, then you win"

===

اقتباس

حُكَّامُـنَا إِنْ تَصَـدّوا لِلْحِمَــى اقْتَحَمُـوا ***** وَإِنْ تَصَدَّى لَـهُ المُسْتَعْمِـرُ انْسَحَبُـوا

هُمْ يَفْرشـُونَ لِجَيْـشِ الغَــزْوِ أَعْيُنَـهُـمْ ***** وَيَدَّعُــونَ وُثُـوبَـاً قَـبْـلَ أَنْ يَثِـبُــوا

الحَاكِمُـونَ و«وَاشُنْـطُـنْ» حُكُومَتُـهُـمْ ***** وَاللامِعُــونَ وَمَـا شَعَّـوا وَلا غَرَبُــوا

القَاتِلُـــونَ نُبُــوغَ الشَّـعْــبِ تَرْضِـيَـــةً ***** لِلْمُعْتَدِيــنَ وَمَـا أَجْـدَتْـهُـمُ الـقُــرَبُ

لَهُمْ شُمُـوخُ «المُثَنَّـى» ظَاهِـرَاً وَلَهُـمْ ***** هَـوَىً إِلَـى بَابَـك الخَرْمِـيّ يُنْتَسَـبُ

البردوني "أبو تمام وعروبة اليوم" 1971

===

اقتباس
عبيد الهوى يحكمون البـلاد ***** ويحكمهــم كلّهـــم درهــــــم

و تقتـادهـم شهـوة لا تنــام ***** وهـــم فـي جـهالتهــم نــــوّم

ففــي كـــلّ ناحيــة ظـالـــم ***** غبــــــيّ يسـلـّطــــه أظلـــم

أيا من شبعتم على جوعــنا ***** وجـــوع بنينـا ألـم تتخمـــوا ؟

ألم تفهموا غضبة الكادحين ***** على الظلـم ؟ لا بدّ أن تفهموا

البردوني "نحن و الحاكمون "

#22

سيدي العزيز اجد صعوبة في تحديد مكان الرسم وحجم الرسم

اي حجم الارقام التي قمت برسمها ومكانها

وايضا لم استطيع عمل الاستدعاء لم اعرف كيف لي ان استدعي

ارجوكككككككككككك يا سيدي العزيز ساعدني

واليك الكود كامل فقط قمت بادراج الكود والدوال التي ترسم كل رقم لحاله

فقط ولم اقم بااستدعاءها حاول تطبيق كل داله على حده تجد ان الحجم مختلف

وايضا مكان الرسم قد يكون في نفس المكان

انا منتظرة ردك ياسيدي العزيز والذي اعتبره اصبح اخ عزيز جد

						   

// Clock Project by using c functions
#include<graphics.h>
#include <stdio.h>
void zero();
void one();
void two();
void three();
void four();
void five();
void six();
void seven();
void eight();
void nine();
//////////////////////////////////////////////////////
int main()
{
int tm_sec=0;
int tm_min=0;
int tm_hour=12;
char thetime[8];

initwindow(600,600);
//////////////////////////////////////////////////////////
	setfillstyle(1,17); //background color
	floodfill(400,400,15);//background color
/////////////////////////////////////////////////////////
  //To design the place of time
	setfillstyle(1,0);
	rectangle(100,300,500,100);
	floodfill(200,200,15);
////////////////////////////
	setfillstyle(1,9);
	rectangle(150,150,450,250);
	floodfill(200,200,15);
////////////////////////////////////////////////
			while(!kbhit())
			   {
			   setfillstyle(1,9);
				   if(tm_sec ==60)
					  {
					  tm_sec=0;
					  tm_min++;
					  }

				   if(tm_min==60)
					   {
					  tm_min=0;
					  tm_hour++;
					   }
			  if(tm_hour>12) tm_hour-=12;
			   sprintf(thetime,"%02d:%02d:%02d",tm_hour,tm_min,tm_sec);
			   settextstyle(3,0,5);
			   outtextxy(200,180,thetime);
			   delay(50);
			   tm_sec++;
			   }
closegraph();
return 0;
}



////////////////////////////////////////////////////////////
//THE DRAWING NUMBERS IN EACH PROCEDURE

void zero()
{
	 circle(100,200,30);
}

void one()
{
	 line(150,150,150,250);
}

void two()
{
	moveto(100,100);
	linerel(50,0);
	//////////////////////
	linerel(-50,100);
	/////////////////////
	linerel(50,0);
 }

 void three()
   {
	 arc(300,300,-90,90,50);
	 arc(300,400,-90,90,50);
	 }
 void four()
  {
	  line(350,300,350,350);
	  line(350,350,450,350);
	  line(450,300,450,450);
  }

 void five()
 {
	  moveto(300,300);
	linerel(-100,0);
	////////////////////
	linerel(0,50);
	//////////////
	linerel(100,0);
	///////////////
	linerel(0,50);
	/////////////////
	linerel(-100,0);
}

void six()
{
	 arc(290,305,90,-90,50);
	circle(310,400,50);
}

void seven()
{
	 line(250,250,300,250);
	line(300,250,250,350);
	line(250,300,300,300);
}
void eight()
{
	 circle(200,200,20);
	circle(200,240,20);
}
void nine()
{
	 circle(300,300,40);
	line(340,305,300,400);
}
#23

ارجو منكم السرعه في الرد يا سيدي Cipher لانني بحاجة إلى المساعده

جدا في عمل هذا البرنامج وقد ادرجت محاولتي ولكن لم اجد رد

#24

ارجو منكم المساعدة في الكود المرفق باقصى سرعه ممكنه

حيث قمت بادراج الكود في الموقع ولم اجد اي استجابة

وشكرا

#25

السلام عليكــم ورحمـة الله وبركاتــه ،،

up

مواضيع مشابهة