سئوالات و مشکلات برنامه نویسی به زبان C و ++C

H.r.Ghanbari

عضو جدید
پاسخ معکوس ماتریس 3*3

پاسخ معکوس ماتریس 3*3

سلام!
من یه برنامه ای برای محاسبه ی معکوس ماتریس 3*3 نوشتم... ولی جواب غلط میده.... میخواستم ببینم مشکلش کجاست و چه جوری میشه حل کردش!
اینم از کد برنامه:


1. قسمت دترمینان روبه شکل زی تغییر بده.
یعنی روی سطر 0 می خواییم بسز بدیم پس یک در میان علامت ضرایب + و - باید بشه
کد:
//*****************determinan matris asli********
for(i=0;i<3;i++)
{
      c*=-1;
      d += c*a[0][i]*el(0,i,a);
}

محاسبه هر عضو ماتریس القایی( i, j:)

i سطر و j ستون
کد:
Float elgayi( int i, int j, int *a )
{

Int *temp = (int*) malloc(sizeof(int)*4; // a = 2*2
int *temp2 = temp;
Int c1 , c2;
For( c1 = 0 ; c1 < 3 ; C1++)
{         
                        if( c1 == I )
                                    continue;
For( c2 = 0 ; c2 < 3 ; C2++)
{
                        If( c2 == j )
                                    Continue;
                        *( temp++) = a[c1][c2];
}
}
temp = temp2;
float d2_2 = temp [0][0]*temp [1][1] - temp [0][1]*temp [1][0] ;
return d2_2;
}

حالا با این تابع می تونید تک تک عناصر ماتریس القای یی تون و حساب کنید ( با دو تا for طو در طو );):D
 
آخرین ویرایش:

C++!

عضو جدید
از آقایون مهندسین کسی اینجا هستش بتونه مشکل برنامه زیر را رفع کنه؟(مشکلش اینکه ستاره در فقط به چپ و پایین حرکت میکنه و در بعضی مواقع ممکنه به جایی برسه که نتونه از ردش بشه و جلوی راهش بسته باشه. باید شرط های دیگری اضافه کرد که در این مواقع به راست به بالا و... بره که بتونه مسیر راهشو پیدا کنه و از همه رد بشه)

کد:
#include<iostream.h>
#include<conio.h>
#include<stdio.h>
#include <stdlib.h>
#include <dos.h>
void create_wall(char matris[10][10]);
void print(char matris[10][10]);
void move(char matris[10][10]);
int x=0,y=0;
void main(){
 char matris[10][10]={"  "};
 create_wall(matris);
 print(matris);
 while(1){
  move(matris);
  delay(500);
  clrscr();
  print(matris);
 }
 getch();
}
///////////////////////////////
void create_wall(char matris[10][10]){
 clrscr();
 randomize();
 for (int k=0;k<20;k++){
  int i=random(10);
  int j=random(10);
  matris[i][j]='1';
 }
 matris[x][y]='*';
 //for(int i=0;i<9;i++)
}
/////////////////////////////////////
void print (char matris[10][10]){
 for(int i=0;i<10;i++){
   for(int j=0;j<10;j++)
    cout<<matris[i][j];
   cout<<"\n";
   }
}
///////////////////////////////////////
void move(char matris[10][10]){
  //char temp;
  if (matris[x][y+1]!='1'){
   matris[x][y]=' ';
   y++;
   matris[x][y]='*';
  }
  else if(matris[x+1][y]!='1'){
   matris [x][y]=' ';
   x++;
   matris[x][y]='*';
  }
 

chemblog

عضو جدید
لوزی

لوزی

سلام کسی میتونه جواب این سوالو به زبان C بنویسه
برنامه ای که n رو بگیره و یک لوزی به طول 2n-1 رسم کنه مثلا اگر n=4
*
***
*****
*******
*****
***
*
 
آخرین ویرایش:

C++!

عضو جدید
اینجا هم هیچ کس هیچ کمکی به من نکرد... این برنامه بالا را به هر برنامه نویسی گفتم نتونست مشکلش را درست کنه و یا گفت یکی دو روز !!!! کار داره! یکی اینچا معرفی کرد که اینجا هم ماشالله...!:mad:
 

chemblog

عضو جدید
اینجا هم هیچ کس هیچ کمکی به من نکرد... این برنامه بالا را به هر برنامه نویسی گفتم نتونست مشکلش را درست کنه و یا گفت یکی دو روز !!!! کار داره! یکی اینچا معرفی کرد که اینجا هم ماشالله...!:mad:
متاسفانه راست میگی کسی حاضر نیست وقت بزاره
 
  • Like
واکنش ها: C++!

C I V I L

عضو جدید
سلام

من دانشجوی کامپیوتر نیستم ولی درس برنامه نویس کامپیوتر به زبان c داریم و باید به امید خدا پاسش کنیم.

این استاد ما 4 تا سوال گفته که احتمال داره از اینا امتحان ترم رو بگیره و این سوالا که شاید هرکدوم چند تا خط

بیشتر نباشه ایناست :


1- برنامه ای بنویسید که دو عدد از ورودی گرفته و مجموع اعداد زوج بین آن ها را چاپ کند.

2- برنامه ای بنویسید که مجموع اعداد اول بین 3 تا n را محاسبه و چاپ کند.

3- برنامه ای بنویسید که n عدد از ورودی گرفته و اعدادی را که رقم یکان آن ها برابر 3 است را نمایش دهد.

4- برنامه ای بنویسید که حاصل عبارت! S = x - (x^2 )/2! + (x^3 )/3! +..... + (x^n) /n را محاسبه و چاپ کند.

دوستان یه راهنمایی بکنید. من از زبان c زیاد سر در نمیارم.

ممنون
 
آخرین ویرایش:

chemblog

عضو جدید
سلام

من دانشجوی کامپیوتر نیستم ولی درس برنامه نویس کامپیوتر به زبان c داریم و باید به امید خدا پاسش کنیم.

این استاد ما 4 تا سوال گفته که احتمال داره از اینا امتحان ترم رو بگیره و این سوالا که شاید هرکدوم چند تا خط

بیشتر نباشه ایناست :


1- برنامه ای بنویسید که دو عدد از ورودی گرفته و مجموع اعداد زوج بین آن ها را چاپ کند.

2- برنامه ای بنویسید که مجموع اعداد اول بین 3 تا n را محاسبه و چاپ کند.

3- برنامه ای بنویسید که n عدد از ورودی گرفته و اعدادی را که رقم یکان آن ها برابر 3 است را نمایش دهد.

4- برنامه ای بنویسید که حاصل عبارت! S = x - (x^2 )/2! + (x^3 )/3! +..... + (x^n) /n را محاسبه و چاپ کند.

دوستان یه راهنمایی بکنید. من از زبان c زیاد سر در نمیارم.

ممنون


شاید بتونی از این جزوه ها کمک بگیری
مشاهده پیوست c.pdf
مشاهده پیوست c_questions2.pdf
 

VGA

عضو جدید
سلام. سوال من مبتدی در ++C اینه که کدی بنویسیم که

1
2 1 2
3 2 1 2 3
2 1 2
1
رو چاپ کنه. ممنون میشم اگه جواب بدین
 

VGA

عضو جدید
هر برنامه ای که با visual studio ++C مینویسم اجرا نمیشه!!! چکار کنم ؟؟؟ (ویندوز 7 x64 )
 

dashing67r

عضو جدید
نرم افزار C++ رو کسی نداره برام setup برنامه رو بذاره !!! من باید دانلود کنم و برنامه رو میخوام و توی سیستم ندارم ... اگه کسی میتونه لینک یا setup یا هر چی دیگه بده من ممنون می شم
 

dashing67r

عضو جدید
من باید دترمینان ماتریس 10*10 رو بنویسم . اگه کسی 3*3 رو داره بده . بعدم راهنمایی کنید چجوری تبدیلش کنم به 10*10
 

HH2BN1990

کاربر فعال
هر برنامه ای که با visual studio ++C مینویسم اجرا نمیشه!!! چکار کنم ؟؟؟ (ویندوز 7 x64 )

از کدوم ورژن ویژوال استدیو استفاده می کنی ؟
چه اروری می ده ؟
پروژه رو از نوع Win32 Console Application می سازی تیک Empty Project رو می زنی بعد تو پروژه ات C++ File ادد می کنی و کدت رو می نویسی ؟
 

respectful_23

عضو جدید
سلام
خسته نباشید
یه پروژه دارم به زبان c++

نمیدونم چطوری باید شروع کنم

لطفا یکم راهنماییم کنید

قسمتی از برنامه:
شما باید یک صفحه متشکل از تعداد زیادی خانه (100*100) در نظر بگیرید که در هر لحظه تعدادی از انها روی صفحه قرار داده شده اند (بسته به اندازه ای که شما برای هر خانه در نظر میگیرید) خانه های این صفحه باید همانند اکسل ولقعی نامگذاری شوند و در بالا و چپ صفحه نمایش داده شوند. این نام گذاری و نحوه ی نمایش را دقیقا همانند اکسل اعمال نمایید. این برنامه باید یک خط فرمان داشته باشد که در ان کاربر میتواند یک عدد یا فرمان را وارد کند که جواب باید در خانه ی فعال قرار گرفته و نمایش داده شود............

مشکل من در نحوه ی اجاد این خونه ها و خط فرمان است
 
آخرین ویرایش توسط مدیر:

gole-rose

عضو جدید
سلام
من یه مشکلی توی فایلها در برنامه نویسی به زبان C دارم

یه فایل دارم که 4 خط است و هر خط 5 حرف داره.
مثلا فرض کنید به این شکل:

salam
babye
salam
babye

می خوام این رو از فایل بخونم و در آرایه 4 تایی از رشته ها ذخیره کنم مثلا arr[4][6] I
یعنی هر خط رو توی یک رشته

با دستور fgets به انتهای هر خط که رسید دیگه نمی خونه

چطور می تونم توی یه حلقه ی for بذارمش ولی بهش بگم هر دفعه که دوباره می خواهی بخونی از همونجا که رسیدی شروع کن نه از ابتدای فایل؟؟



اگه دستور دیگر و راحت تری هم هست ممنون می شم بگید.

با تشکر
 

HH2BN1990

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

یه فایل دارم که 4 خط است و هر خط 5 حرف داره.
مثلا فرض کنید به این شکل:

salam
babye
salam
babye

می خوام این رو از فایل بخونم و در آرایه 4 تایی از رشته ها ذخیره کنم مثلا arr[4][6] I
یعنی هر خط رو توی یک رشته

با دستور fgets به انتهای هر خط که رسید دیگه نمی خونه

چطور می تونم توی یه حلقه ی for بذارمش ولی بهش بگم هر دفعه که دوباره می خواهی بخونی از همونجا که رسیدی شروع کن نه از ابتدای فایل؟؟



اگه دستور دیگر و راحت تری هم هست ممنون می شم بگید.

با تشکر

کد:
[LEFT]#include <stdio.h>

#include <conio.h>

#include <string.h>

#include <stdlib.h>


void main()

{

    FILE *fp = fopen("SAVE.TXT","r");

    int i = 0;

    char P[4][6];

    if(fp!=NULL)

    {

        while (!feof(fp))

        {

            fscanf(fp,"%s\n",P[i]);

            i++;

        }

    }

    fclose(fp);

    for(int j=0;j<4;j++)

    {

        printf("%s\n",P[j]);

    }

    getch();

}
 [/LEFT]
 

shabnam.gh

عضو جدید
سلام
میشه بگید این دستور ها چه معنی میدن و این اعداد چی هستند؟!
int far *scr=(int far *)0XB8000000;


*(scr+20*80+38)='G'+7*256;
*(scr+20*80+39)='A'+7*256;
*(scr+20*80+40)='M'+7*256;
*(scr+ 20*80+41)='E'+7*256​
 

hashemi110

عضو جدید
سلام خسته نباشید.من دارم بازی تتریسو به زبان c مینویسم.از گرافیکم استفاده میکنم.شکل ها و محیط کلیو درست کردم ولی نمید.نم چرا شکل ها حرکت نمیکنن! سعی کرئم تابع های حرکتو بنویسم نشد. ممنون میشم کمک کنید
 

VGA

عضو جدید
سلام. تو ی برنامه ++C گیر کردم. سوال اینه که چند عدد از کاربر بگیره ( مثلا 5 تا ) و بگه چندتا عدد 2 رقمی ، چندتا 3، .... چندتا 5 رقمی میشه باهاشون ساخت. جوابشم اینجوریه که هر دفعه از عدد آخر شروع کنه (مثلا اون 5 تا عددمون 1.2.3.4.5 و باید از 1*2*3*4*5 شروع کنه ) وهر بار که حساب کرد عدد آخر یعنی در اینجا برای بار اول که 1 هست ، حذفش کنه. تا اینکه فقط 4*5 بمونه.
 

ghazalkhanoomi

عضو جدید
سلام من یه سوال دارم می تونی جواب بدی برنامه ای بنویسید که دو عدد دو رقمی را گرفته و ب.م.م و ک.م.م آن دو را محاسبه و بدست آورد
 

gole-rose

عضو جدید
سلام
خیلی ممنونم که جواب سوالاتم رو می دین.

من باز هم توی خوندن از فایل با مشکل مواجه شدم


می خوام یک فایل رو بخونم که 10 خط است و در هر خط 10 حرف وجود داره که این حرفها با space از هم جدا شدند.

چطوری می تونم محتوای این فایل رو بخونم ولی اسپیس ها رو ذخیره نکنم.

محتوای فایل باید توی یک آرایه ی ده در ده یا یازده مثل arr[10][11] l ذخیره بشه



از fscanf استفاده کردم و با c% خوندم
و با if گفتم که اگر با کاراکتر اسپیس مواجه شدی (کد اسکی 20) --j کن.
ولی run-time error می ده


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

"sama"

عضو جدید
سلام
من راجع به کتابخونه std یه بار سوال پرسیدم اما راهنمایی هاتون نتیجه نداد
میشه یه خورده سلیس تر برام توضیح بدیم!!!!
چرا ازش استفاده میکنیم ؟
چطور ازش استفاده میکنیم؟
یه لیستی هم از کتابخونه ها وامکاناتی که داره برام بفرستید(لطفا!!!)
لطف کنید هر کی هرچی میدونست بهم بگه :cry:
بازم ممنون از همه
 

MASOUME_5

عضو جدید
سلام.من می خوام یه پروژه چت به زبانC تحت لینوکس بنویسم.GCC از تابع gets() و inet_addr خطا می گیره که تعریف نشدن.هم چنین از تابع close واسه بستن سوکت.!!!!!!
یه سوال دیگه که دارم اینه که چطور می شه دو برنامه client و server رو با هم اجرا کنم؟من به سرور آدرس ip ماشین خودم رو دادم و واسه کلاینت argv[2] چطور می تونم با این دستور ip به کلاینت بدم؟و هر دو برنامه رو به طور همزمان اجرا کنیم روی یه کامپیوتر.لینوکس هم suse است.
ممنون
 

VGA

عضو جدید
دستتون درد نکنه که جواب سوالمو دادین ... واقعا این رسمشه ؟؟؟ نزدیک به 1 ماه که سوالمو گفتم ولی هیچکس ی تف هم کف دست ما ننداخته . حداقل بگین آقا خودت برو پیداش کن. ها ؟؟ آخرش همینه دیگه ؟ نه اینکه آدم رو سر کار میذارین ... هر روز سر میزدم که ببینم جوابی اومده یا نه ... اینم شد آخه ؟؟؟
 

doost4

عضو جدید
Visual C++ 2010

Visual C++ 2010

سلام . در حال نوشتن برنامه ای هستم که در این قسمت اطلاعات رو از فایل میخونه و در برنامه قرار میده . عکسی هم که ضمیمه شده function دکمه load هست که نوشتم اما یه کامپایل ارور میده که نمیفهمم چیه . از دوستان کسی متوجه میشه ؟ لازم به ذکر هست برنامه با MFC نوشته شده . (این ارور مربوط به . بعد از f1 هست)


3.jpg
 

zahra1386

مدیر بازنشسته
کاربر ممتاز
سلام . در حال نوشتن برنامه ای هستم که در این قسمت اطلاعات رو از فایل میخونه و در برنامه قرار میده . عکسی هم که ضمیمه شده function دکمه load هست که نوشتم اما یه کامپایل ارور میده که نمیفهمم چیه . از دوستان کسی متوجه میشه ؟ لازم به ذکر هست برنامه با MFC نوشته شده . (این ارور مربوط به . بعد از f1 هست)


مشاهده پیوست 82314

سلام

دوست عزیز ارور مربوط به اینه که شما درستی ترتیب یا نوع آرگومان ها رو رعایت نکردید..... این طور که من سرچ زدم فک کنم آرگومان اول باید از نوع اشاره گر باشه...یه چیزی شبیه این:

کد:
char* pFileName = "test.dat";

 f.Open( pFileName, CFile::modeCreate)
 

gole-rose

عضو جدید
جواب اون سوال من رو نداد کسی :(
لطفا اگر با فایل آشنایی دارین کمک کنین

کسی راجع به لینک لیست چیزی بلده؟؟

چطور می شه یه سری نوشته رو به یه نود اضافه کرد؟؟؟؟؟؟
 

H.r.Ghanbari

عضو جدید
Reply: C++ STL List

Reply: C++ STL List

جواب اون سوال من رو نداد کسی :(
لطفا اگر با فایل آشنایی دارین کمک کنین

کسی راجع به لینک لیست چیزی بلده؟؟

چطور می شه یه سری نوشته رو به یه نود اضافه کرد؟؟؟؟؟؟

این یه مثال از کتابخانه C++ STL برای استفاده از لیست پیوندی دوطرفه هستش:
حالا هر جاش مشکل داری بگو دوستان رفع کنن:
کد:
// constructing lists
#include <iostream>
#include <list>
using namespace std;

int main ()
{
  // constructors used in the same order as described above:
  list<int> first;                                // empty list of ints
  list<int> second (4,100);                       // four ints with value 100
  list<int> third (second.begin(),second.end());  // iterating through second
  list<int> fourth (third);                       // a copy of third

  // the iterator constructor can also be used to construct from arrays:
  int myints[] = {16,2,77,29};
  list<int> fifth (myints, myints + sizeof(myints) / sizeof(int) );

  cout << "The contents of fifth are: ";
  for (list<int>::iterator it = fifth.begin(); it != fifth.end(); it++)
    cout << *it << " ";

  cout << endl;

  return 0;
}
 

gole-rose

عضو جدید
این یه مثال از کتابخانه C++ STL برای استفاده از لیست پیوندی دوطرفه هستش:
حالا هر جاش مشکل داری بگو دوستان رفع کنن:
کد:
// constructing lists
#include <iostream>
#include <list>
using namespace std;

int main ()
{
  // constructors used in the same order as described above:
  list<int> first;                                // empty list of ints
  list<int> second (4,100);                       // four ints with value 100
  list<int> third (second.begin(),second.end());  // iterating through second
  list<int> fourth (third);                       // a copy of third

  // the iterator constructor can also be used to construct from arrays:
  int myints[] = {16,2,77,29};
  list<int> fifth (myints, myints + sizeof(myints) / sizeof(int) );

  cout << "The contents of fifth are: ";
  for (list<int>::iterator it = fifth.begin(); it != fifth.end(); it++)
    cout << *it << " ";

  cout << endl;

  return 0;
}



خیلی ممنون از اینکه وقت گذاشتین.
ولی من برای C می خوام نه ++C
و اینکه کلا کاری که می خوام بکنم اینه که یه سری اطلاعاتو از فایل بخونم و مثلا تبدیل به سه تا نود بکنم
مثلا محتوای فایل اگر اینطوری باشه:
start
salam
salam
bye
salam bye
end
start

h
a s d f g h
ddddd
end

مثلا محتوای این فایل رو بخونه و نوشته های بین start و end ها رو هر کدوم یک نود کنه
 

gole-rose

عضو جدید
سلام. تو ی برنامه ++C گیر کردم. سوال اینه که چند عدد از کاربر بگیره ( مثلا 5 تا ) و بگه چندتا عدد 2 رقمی ، چندتا 3، .... چندتا 5 رقمی میشه باهاشون ساخت. جوابشم اینجوریه که هر دفعه از عدد آخر شروع کنه (مثلا اون 5 تا عددمون 1.2.3.4.5 و باید از 1*2*3*4*5 شروع کنه ) وهر بار که حساب کرد عدد آخر یعنی در اینجا برای بار اول که 1 هست ، حذفش کنه. تا اینکه فقط 4*5 بمونه.


دوست عزیز یه کم سوالتون برام نا مفهومه
در ضمن نگفتین که این اعداد n رقمی ای که می خواین حساب کنین با تکراره یا بدون تکرار
این مثالی که زدین بدون تکراره، منم برای همین می گم


اینطوری بگو که مثلا عدد n رو از کاربر بگیره
برای اینکه بگه چند تا عدد n رقمی بدون تکرار ارقام می شه ساخت باید !n رو حساب کنی که اینم کاری نداره. توی یه حلقه ی for بهش بگو از n تا 1 ، هر دفعه n رو در n-1 ضرب کنه

برای اینکه بگه چند تا عدد n-1 رقمی بدون تکرار ارقام می شه ساخت باید !(n-1) رو حساب کنی (مشابه بالا)
همینطور تا آخر

نمی دونم سوالت همین بود یا نه
اما امیدوارم به دردت بخوره
 
آخرین ویرایش:

Similar threads

بالا