mahdavi3d

همفکری کاربران برای رفع اشکالات برنامه نویسی

Recommended Posts

احسنت! پس دیگه نیازی به سرفایل conio.h هم نداریم.
اینم برنامه دریافت داده به صورت ماتریسی دلخواه و محاسبه معدل، مجموع، حداقل و حداکثر:
[left]
[code]
//By Electro_officer

#include<stdio.h>
#include <string.h>

int main()
{
printf("In the name of GOD\n\n");
char control_key[10]; //Condition is true for the first time.

do
{
int i, j, min, max, n;
double ave;
int r, c, total = 0;
printf("Enter row and column here:\n");
scanf("%d%d", &r, &c );
int data[r][c];

//Recieving data.
printf("\nRecieving data now...\n");

for( i=0; i<r; i++ )
{
printf("Enter data for row %d:\n", i+1 );

for ( j=0; j<c; j++ )
{
scanf("%d", & data[i][j]);
}

printf("\n");
}

printf("\n\n");

//Printing data.
printf("You entered the matrix:\n");

for(j=0; j<=75; j++)
printf("-");

printf("\n");

for(i=0; i<r; i++)
{

for(j=0; j<c; j++)
{
printf("%8d", data[i][j]);
}

printf("\n");
}

printf("\n\n");

//Calculating minimum & maximum.
min = 999999999;
max = 0;

for(i=0; i<r; i++)
{

for(j=0; j<c; j++)
{
if( data[i][j]<= min )
min = data[i][j];

if( data[i][j]>= max )
max = data[i][j];
}

}

//Calculating total & avereage.
n=c*r;
for(i=0; i<r; i++)
{

for(j=0; j<c; j++)
{
total += data[i][j];
}

}

ave = (double)total / n;

//Printing results.
printf("The minimum is: %d\n", min);
printf("The maximum is: %d\n", max);
printf("The sum is: %d\n", total);
printf("The avereage is: %f\n\n", ave);

//Controlling the loop.
while(1)
{
printf("Press\n1: continue.\n2: quit.\n");
scanf("%s", &control_key);

if( (strlen(control_key)<2)&& (control_key[0] == '1' || control_key[0] == '2' ))
break;

else
printf("Just digits 2 or 1 could be accepted!!!\n\n");

}

printf("\n\n");

}
while( control_key[0] == '1' );
}

[/code][/left]

به اشتراک گذاشتن این پست


لینک به پست
اشتراک در سایت های دیگر
سلام
حالا این کار میکنه یا این هم ..؟! :winking:
ظاهرا به تعریف آرایه پویا گیر میده
[code]
int data[r][c];
[/code] ویرایش شده در توسط oldmagina

به اشتراک گذاشتن این پست


لینک به پست
اشتراک در سایت های دیگر
نه هیچ مشکلی وجود نداره. دوست داشتم با توابع و جدا جدا بنویسم اینقد ارور میداد به همین یه تیکه آرایه پویا که بیخیالش شدم.

به اشتراک گذاشتن این پست


لینک به پست
اشتراک در سایت های دیگر
[quote name='Electro_officer' timestamp='1373983423' post='321865']
نه هیچ مشکلی وجود نداره. دوست داشتم با توابع و جدا جدا بنویسم اینقد ارور میداد به همین یه تیکه آرایه پویا که بیخیالش شدم.
[/quote]

سلام
اگه آرایه رو به این شکل تعریف بکنی هیچ مشکل یا اروری نمیده . الان ادامه اش رو با توابع و جدا جدا بنویس تا ببینیم در نهایت چی از آب در میاد.
[code]
#include<stdio.h>
#include <string.h>

int main()
{
printf("In the name of GOD\n\n");
char control_key[10]; //Condition is true for the first time.

do
{
int i, j, min, max, n;
double ave;
int r, c, total = 0;
printf("Enter row and column here:\n");
scanf("%d%d", &r, &c );

int ** data = 0;
data = new int* [r];
for (int i=0; i < r; i++)
{
data[i] = new int [c];
}




//Recieving data.
printf("\nRecieving data now...\n");

for( i=0; i<r; i++ )
{
printf("Enter data for row %d:\n", i+1 );

for ( j=0; j<c; j++ )
{
scanf("%d", &data[i][j]);
}

printf("\n");
}

printf("\n\n");

//Printing data.
printf("You entered the matrix:\n");

for(j=0; j<=75; j++)
printf("-");

printf("\n");

for(i=0; i<r; i++)
{

for(j=0; j<c; j++)
{
printf("%8d", data[i][j]);
}

printf("\n");
}

printf("\n\n");

//Calculating minimum & maximum.
min = 999999999;
max = 0;

for(i=0; i<r; i++)
{

for(j=0; j<c; j++)
{
if( data[i][j]<= min )
min = data[i][j];

if( data[i][j]>= max )
max = data[i][j];
}

}

//Calculating total & avereage.
n=c*r;
for(i=0; i<r; i++)
{

for(j=0; j<c; j++)
{
total += data[i][j];
}

}

ave = (double)total / n;

//Printing results.
printf("The minimum is: %d\n", min);
printf("The maximum is: %d\n", max);
printf("The sum is: %d\n", total);
printf("The avereage is: %f\n\n", ave);

//Controlling the loop.
while(1)
{
printf("Press\n1: continue.\n2: quit.\n");
scanf("%s", &control_key);

if( (strlen(control_key)<2)&& (control_key[0] == '1' || control_key[0] == '2' ))
break;

else
printf("Just digits 2 or 1 could be accepted!!!\n\n");

}

printf("\n\n");
delete data;
}
while( control_key[0] == '1' );

}

[/code] ویرایش شده در توسط oldmagina

به اشتراک گذاشتن این پست


لینک به پست
اشتراک در سایت های دیگر
دوشنبه درس کلاس ها رو مقدمشو یاد گرفتم.ولی پروژه رو ذخیره نکردم تو فلش تا بیام خونه و روش کار کنم.الان این برنامه همون معدله ولی استاد گفت اون محاسبه گرهاشو بزار تو کلاس.الان این برنامه رو درست نوشتم؟
[CODE]
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
//////////////////////////////////*_(irartesh)_*
namespace FSGco
{
class Program
{
static void Main(string[] args)
{
Console.Write("How many lessons do you enter?:");
int tedad= Convert.ToInt32(Console.ReadLine());
Console.WriteLine();
avg g = new avg();
g.get(tedad);
Console.ReadLine();
}
}
class avg
{
public void get(int tedad)
{
string[] book = new string[tedad];
float[] number = new float[tedad];
int[] vahed = new int[tedad];
float m = 1;
float mo = 0;
float v = 0;
float n = 0;
int r = 0;
float s;
for (int i = 0; i < tedad; i++)
{
r += 1;
Console.Write(r + ".lesson:");
book[i] = Console.ReadLine();
Console.Write(r + ".Number:");
number[i] = Convert.ToSingle(Console.ReadLine());
Console.Write(r + ".Unit:");
vahed[i] = Convert.ToInt32(Console.ReadLine());
v += vahed[i];
n += number[i];
m = number[i] * vahed[i];
mo += m;
}
s = mo / v;
Console.WriteLine();
Console.WriteLine("lesson\tNumber\tunit");
Console.WriteLine("_______________________________________________");
for (int i = 0; i < tedad; i++)
{
Console.WriteLine(book[i] + " \t " + number[i] + " \t " + vahed[i]);
}
Console.WriteLine("_______________________________________________");
Console.WriteLine("Total of num:" + n + "\t\tTotal of unit:" + v);
Console.WriteLine("_______________________________________________");
Console.WriteLine("avg:" + s.ToString("f2"));
}
}
}
[/CODE]

منظورم اینه که راه داره مواردی که تو کلاس avg هست رو بیارم تو کلاس program?یعنی همشون تو کلاس avg نباشه.بخشی از اون باشه.

به اشتراک گذاشتن این پست


لینک به پست
اشتراک در سایت های دیگر
[quote name='irartesh' timestamp='1374045232' post='322031']
دوشنبه درس کلاس ها رو مقدمشو یاد گرفتم.ولی پروژه رو ذخیره نکردم تو فلش تا بیام خونه و روش کار کنم.الان این برنامه همون معدله ولی استاد گفت اون محاسبه گرهاشو بزار تو کلاس.الان این برنامه رو درست نوشتم؟
منظورم اینه که راه داره مواردی که تو کلاس avg هست رو بیارم تو کلاس program?یعنی همشون تو کلاس avg نباشه.بخشی از اون باشه.
[/quote]
سلام دوست عزیز
برنامه ات درست است و درست هم کار میکند. البته با همین سطحش هم میشه یه ذره بهینه ترش کرد . من این جا دو تا از متغیر ها رو که می توانستند نباشند رو ( r و m ) رو برداشتم و یه دستور پاک کردن صفحه کنسول بعد از گرفتن اطلاعات اولیه اضافه کردم.
[CODE]

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
//////////////////////////////////*_(irartesh)_*
namespace FSGco
{
class Program
{
static void Main(string[] args)
{
Console.Write("How many lessons do you enter?:");
int tedad = Convert.ToInt32(Console.ReadLine());
Console.WriteLine();
avg g = new avg();
g.get(tedad);
Console.ReadLine();
}
}
class avg
{
public void get(int tedad)
{
string[] book = new string[tedad];
float[] number = new float[tedad];
int[] vahed = new int[tedad];
float mo = 0;
float v = 0;
float n = 0;
float s;
for (int i = 0; i < tedad; i++)
{
Console.Write((i+1) + ".lesson:");
book[i] = Console.ReadLine();
Console.Write((i + 1) + ".Number:");
number[i] = Convert.ToSingle(Console.ReadLine());
Console.Write((i + 1) + ".Unit:");
vahed[i] = Convert.ToInt32(Console.ReadLine());
v += vahed[i];
n += number[i];
mo += number[i] * vahed[i];
}
s = mo / v;
Console.Clear();
Console.WriteLine();
Console.WriteLine("lesson\tNumber\tunit");
Console.WriteLine("_______________________________________________");
for (int i = 0; i < tedad; i++)
{
Console.WriteLine(book[i] + " \t " + number[i] + " \t " + vahed[i]);
}
Console.WriteLine("_______________________________________________");
Console.WriteLine("Total of num:" + n + "\t\tTotal of unit:" + v);
Console.WriteLine("_______________________________________________");
Console.WriteLine("avg:" + s.ToString("f2"));
}
}
}
[/CODE]

شما میتونی اصلا همه برنامه را در کلاس اصلی ات بنویسی ولی واقعیتش اینه که یه کمی شلوغ بازی میشه . برنامه نویسها معمولا عادت دارند که کلاس اصلی رو تا حد امکان خلوت نگه دارند .
من نظرم اینه که شما میتونی برای کم کردن شلوغی کلاس avg خود اون رو هم به چند تا زیر کلاس دیگه تقسیم بکنید. ویرایش شده در توسط oldmagina

به اشتراک گذاشتن این پست


لینک به پست
اشتراک در سایت های دیگر
ممنون.من هممیخواستم R روحذف کنم ولی اشتباهی i رو به اضافه 1 میکردم و تو i قرار میدادم که اینطوری اشتباه می شد.زیرکلاس هم قراره امروز برم یاد بگیرم.

به اشتراک گذاشتن این پست


لینک به پست
اشتراک در سایت های دیگر
[quote name='irartesh' timestamp='1373728386' post='321320']
[color=#ff0000]روش اول :[/color]
[CODE]
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ax_or_barax
{
class Program
{
static void Main(string[] args)
{
string q="d";
while (q!="q")
{
Console.Write("Type your word:");
string word = Console.ReadLine();
if (word == "")
{
Console.WriteLine("Your text not correct");
}
else
{
int num = word.Length;
num -= 1;
char[] caar = new char[num];
caar = word.ToCharArray();
for (int i = num; i >= 0; i--)
{
Console.Write(caar[i]);
}
}
Console.WriteLine("\nIf you want exit press q");
q = Console.ReadLine();
q = q.ToLower();
}
}
}
}
[/CODE]
[color=#ff0000]روش دوم :[/color]

[CODE]
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
/////////irartesh
namespace ax_or_barax
{
class Program
{
static void Main(string[] args)
{
string q="d";
while ((q!="q") && (q!="Q"))
{
Console.Write("Type your word:");
string word = Console.ReadLine();
if (word == "")
{
Console.WriteLine("Your text not correct");
}
else
{
int num = word.Length;
num -= 1;
char[] caar = new char[num];
caar = word.ToCharArray();
for (int i = num; i >= 0; i--)
{
Console.Write(caar[i]);
}
}
Console.WriteLine("\nIf you want exit press q");
q = Console.ReadLine();
}
}
}
}
[/CODE]


[/quote]

[color=#ff0000]سلام
یه راه جدید برای این کار استفاده از این روش برای مقایسه است :[/color]
[code]
while (!(String.Equals(q, "q", StringComparison.OrdinalIgnoreCase)))
[/code]
که میشه این شکلی
[code]

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ax_or_barax
{
class Program
{
static void Main(string[] args)
{
string q = "d";
while (!(String.Equals(q, "q", StringComparison.OrdinalIgnoreCase)))
{
Console.Write("Type your word:");
string word = Console.ReadLine();
if (word == "")
{
Console.WriteLine("Your text not correct");
}
else
{
int num = word.Length;
num -= 1;
char[] caar = new char[num];
caar = word.ToCharArray();
for (int i = num; i >= 0; i--)
{
Console.Write(caar[i]);
}
}
Console.WriteLine("\nIf you want exit press q");
q = Console.ReadLine();
}
}
}
}

[/code] ویرایش شده در توسط oldmagina

به اشتراک گذاشتن این پست


لینک به پست
اشتراک در سایت های دیگر
هه هه !! فردا هر کدوم از بچه های انجمن علمی یه قالب تو فوتوشاپ اورده و من باید براشون تبدیل به قالب HTML‌بکنمش با HTML5,CSS3 ...!!
بهشون هم یاد بدم که چطوری این کار رو بکنن... مدیر گروه هم علاقمند هستش و گفت وقت کنم میام تماشا میکنم :|

به اشتراک گذاشتن این پست


لینک به پست
اشتراک در سایت های دیگر
[quote name='senaps' timestamp='1374253284' post='322510']
هه هه !! فردا هر کدوم از بچه های انجمن علمی یه قالب تو فوتوشاپ اورده و من باید براشون تبدیل به قالب HTML‌بکنمش با HTML5,CSS3 ...!!
بهشون هم یاد بدم که چطوری این کار رو بکنن... مدیر گروه هم علاقمند هستش و گفت وقت کنم میام تماشا میکنم :neutral:
[/quote]

سلام
عزیز ، لقمه ی بزرگتر از دهنت نباید بر می داشتی ....

کلا اینقدر این حوزه و تعداد زبان های برنامه نویسی زیاده که آدم می مونه تو کدوم مورد وارد بشه ( این اینترنت هم شده بلای جان ما !! ) ... تو ایران هم هر کی به هر کیه ، مثلا شما باید تو تمام زمینه ها ( از برنامه نوسی زمان حقیقی تا وب ) یک چیزهایی بدونی تا شاید گذری یک کاری به تورت بخوره ...

به اشتراک گذاشتن این پست


لینک به پست
اشتراک در سایت های دیگر
[quote name='senaps' timestamp='1374253284' post='322510']
هه هه !! فردا هر کدوم از بچه های انجمن علمی یه قالب تو فوتوشاپ اورده و من باید براشون تبدیل به قالب HTML‌بکنمش با HTML5,CSS3 ...!!
بهشون هم یاد بدم که چطوری این کار رو بکنن... مدیر گروه هم علاقمند هستش و گفت وقت کنم میام تماشا میکنم :neutral:
[/quote]
سلام
میشه بعدش اینجا هم یه آموزش در موردش بذاری ؟! :applause:

به اشتراک گذاشتن این پست


لینک به پست
اشتراک در سایت های دیگر
:) والا من دنبال کارم... مجبورم هرجوری شده خودم رو به ملت نشون بدم... کاری هم نیست که بکنم و درگیر بشم و پول در بیارم و نمیشه همینجوری نشست نیگا کرد...
علاقه‌ ام به برنامه‌نویسی اپلیکیشن هستش ولی متاسفانه ما رو انداختن به جون وب...

[quote]میشه بعدش اینجا هم یه آموزش در موردش بذاری ؟! :applause:[/quote]
بهشون قول دادم که از کار فیلم بگیرم!!‌مسئله اینه که فکر نکنم اونا چیز خاصی اماده کرده باشن چون همون طراحی قالب رو هم بلد نیستن!! و منم بخوام یه چیز الکی رو سریع و تند تند تبدیل بکنم اونم برای اموزش دادن چیز داغونی میشه!!!! به هر صورت باید ببینم چیکار میکنن اونا و میشه انرژی گذاشت یا نه و همون فیلم رو اینجا هم میذارم! :| ویرایش شده در توسط senaps

به اشتراک گذاشتن این پست


لینک به پست
اشتراک در سایت های دیگر
senaps عزیز و سایر دوستان متخصص در زمینه برنامه نویسی و طراحی، اگه خیلی اوضاعتون بحرانیه به این سایت یه سر بزنید [url="http://ponisha.ir/"]http://ponisha.ir[/url]

به اشتراک گذاشتن این پست


لینک به پست
اشتراک در سایت های دیگر
PHP کاران به گوش ...به هوش

این کلاس اسمش DbConnect هست
[CODE]
<?php
require_once 'class.system.component.php';
class DbConnector extends SystemComponent
{
var $thequery;
var $link;
function __construct()
{
$setting=SystemComponent::getsetting;
$host=$setting['dbhost'];
$user=$setting['dbusername'];
$pass=$setting['dbpassword'];
$db=$setting['dbname'];

$this->link=mysql_connect('$host','$user','$pass');
mysql_select_db($db);
register_shutdown_function(array(&$this,'close'));
}
function query($query)
{
$this->thequery=$query;
return mysql_query($query,$this->link);

}
function fetchAssoc($result)
{
return mysql_fetch_assoc($result);
}

function close()
{
mysql_close($this->link);
}
}
?>
[/CODE]

در یک فایل دیگه میخوام از این کلاس استفاده کنم...اما بعد از ساخت یه شئی دیگه دستورات اجرا نمیشن...مثلا echo آخر دیگه چیزی چاپ نمیکنه
[CODE]
require_once ('includes/class.db.connector.php');
$con=new DbConnector();
echo "bmnbnr";[/CODE]
[/CODE]

مشکلش چیه؟

به اشتراک گذاشتن این پست


لینک به پست
اشتراک در سایت های دیگر
[CODE]
$setting=SystemComponent::getsetting;

[/CODE]
احتمالا تابع باشد که آخر آن باید () قرار دهید - البته اگر کامپایلر شما به این مورد حساس باشد!

[CODE]$this->link=mysql_connect('$host','$user','$pass');[/CODE]
بجای 'ها کاراکتر " بگذارید یا اصلا آنرا بردارید و بصورت زیر بنویسید
[CODE]$this->link=mysql_connect($host,$user,$pass);[/CODE]

به اشتراک گذاشتن این پست


لینک به پست
اشتراک در سایت های دیگر

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

کاربر محترم برای ارسال نظر نیاز به یک حساب کاربری دارید.

ایجاد یک حساب کاربری

ثبت نام برای یک حساب کاربری جدید در انجمن ها بسیار ساده است!

ثبت نام کاربر جدید

ورود به حساب کاربری

در حال حاضر می خواهید به حساب کاربری خود وارد شوید؟ برای ورود کلیک کنید

ورود به سیستم

  • مرور توسط کاربر    0 کاربر

    هیچ کاربر عضوی،در حال مشاهده این صفحه نیست.