من ورژن ۱۳.۱۲ رو دارمنقل قول:
قبل از ران کردن برنامه رو ذخیره کنید ببینید بازم مشکل داره یا نه.
Printable View
من ورژن ۱۳.۱۲ رو دارمنقل قول:
قبل از ران کردن برنامه رو ذخیره کنید ببینید بازم مشکل داره یا نه.
سلامنقل قول:
الان ورژن13.12گرفتم خدارو شکر فکر کنم درست شد (فکر کنم مشکل از نسخه برنامه من بوده)دو تا برنامه نوشتم که ایراد نگرفت. بازم ممنون
سلام
اگر امکانش هست یک راهنمایی یا توضیعی بدید دوستان در مورد این سوال.
برنامه ای که عدد n را از ورودی دریافت کرده و سپس یک مربع توخالی به طول و عرض n با ستاره چاپ کند. (فقط با ارایه نباشه )
زیاد سخت نیست با یه حلقه تو در تو انجام میشه.
یه مثال میزنم که یه حلقه تو در تو داره و در مورد اون توضیح میدم:
این برنامه جدول ضرب اعداد یک تا پنج را در اعداد یک تا پنج چاپ میکند.کد:#include <iostream>
using namespace std;
int main(){
int i, j;
for (i = 1; i <= 5; i ++){
for (j = 1; j <= 5; j++){
cout << i*j << "\t";
}
cout << endl;
}
return 0;
}
حلقه اول که با i کنترل میشود، با هر بار اجرا حلقه دیگری را اجرا میکند و پس از اجرای کامل حلقه داخلش دوباره اجرا میشود تا وقتی که i برابر با ۵ شود. در واقع:
کد:i = 1
j = 1
print j * i
j = 2
print j * i
j = 3
print j*i
.
.
.
i = 2
j = 1
print j * i
.
.
.
سلام همون طور که گفتید انجام دادم برنامه رو ولی نمیدونم چرا یکی از ضلع های مربع رو نمیتونم چاپ کنم.نقل قول:
اینم کدها:
int main(){
int i,x;
cout<<"enter x number:";
cin>>x;
for (i=0;i<=x;i++){
cout << "* ";}
for (i=0;i<=x;i++){
cout<<"*"<<endl;}{
i=x;
for(i=0;i<=x;i++)
cout<<"* ";}
سلام../// [ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]
*****************
********************کد:#include <iostream>
using namespace std;
int main()
{
int x, i, j;
cout << "X : ";
cin >> x;
for (i = 1; i <= x; ++i)
cout << "* ";
cout << endl;
for (i = 3; i <= x; ++i)
{
cout << "* ";
for (j = 3; j <= x; ++j)
cout << " ";
cout << "* ";
cout << endl;
}
for(i = 1; i <= x; ++i)
cout << "* ";
cout << endl;
}
حلقه ی اول ضلع بالایی مربع یا یک خط ستاره چاپ می کنه!.// به شرط حلقه دقت کنید!// حلقه ی شما یکبار بیشتر اجرا می شه و یه ستاره اضافه چاپ می کنه یعنی مثلاً اگه عدد 5 رو وارد کنید حلقه 6 بار اجرا می شه و 6 تا ستاره چاپ می کنه..//// برای حل این مشکل یا باید i<=x رو به صورت i<x بنویسید و یا i رو به جای صفر با یک مقدار دهی کنید تا حلقه یکبار کمتر اجرا بشه../// [ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]
************************
بعد از حلقه ی اول برنامه دو تا حلقه ی تو در تو داریم که حلقه ی بیرونی که i رو مقدار دهی می کنه/ خطوط رو مشخص می کنه و حلقه ی درونی که j رو مقدار دهی می کنه/// اطلاعات هر خط رو چاپ می کنه../// توجه داشته باشید که ما ضلع بالایی و پایینی رو با دو تا حلقه ای که اول و آخر برنامه هست چاپ می کنیم پس تعداد خطوطی که بین این دو ضلع هست میشه x-2 و حلقه باید 2 بار کمتر اجرا بشه پس i رو به جای یک با 3 مقدار دهی می کنیم../// [ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]
*********************
داخل حلقه ی بیرونی که i رو مقدار دهی می کنه// اول یه ستاره چاپ می کنیم!// و بعد x-2 فضای خالی با استفاده از حلقه ی درونی چاپ می کنیم و در آخر یه ستاره دیگه چاپ می کنیم و به خط بعد میریم../// این دقیقاً همون روشی هست که تو کل برناممون استفاده کردیم.//// [ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]
******************
در نهایت یه حلقه ی دیگه دقیقاً مثل حلقه ی اول برنامه داریم که ضلع پایینی مربع رو چاپ می کنه../// [ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]
***********************
امیدوارم که خوب توضیح داده باشم!../// [ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]
********************
موفق باشید! [ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]
سلام کسی میتونه یه کد برنامه ماشین حساب چهار عمل اصلی با دستور switch برام بنویسه ممنون میشم بخدا لازممه هرچه زودتر بهتر بازبان c++ باشه لطفا کامپایلرم توربو هست
بیشتر این دستورها ممکنه در اینترنت باشندنقل قول:
[ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]
سلام دوست عزیز جواب سوال شما در سایت زیر آمدهنقل قول:
[ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]
کسی میدونه مشکل این برنامه چیه؟
کد:
#include<stdio.h>
#include<conio.h>
#include<malloc.h>
#include<process.h>
#include <fstream.h>
#include <string.h>
struct node
{
char * info;
struct node *right;
struct node *left;
};
typedef struct node *BST;
typedef struct node node;
BST find(BST t,char * x)
{
if (t==NULL) return NULL;
if (x<t->info) return find(t->left,x);
else
if (x>t->info) return find(t->right,x);
else
return t;
}
BST insertnode(BST t,char * x)
{
if(t==NULL) {
t=(node*)malloc(sizeof(node));
if(t==NULL) printf("\n Out of Space !!");
else {
t->info = x;
t->left = t->right = NULL;
}
}
else
if (x<t->info) {
t->left=insertnode(t->left,x);
}
else
if (x>t->info) {
t->right=insertnode(t->right,x);
}
return t;
}
void dis(BST t,char * x)
{ double rpl[26][26];
double d=100 ;
char *pos;
ifstream myfile;
myfile.open("kb.txt",ios::in);
for(int i=0;i<26;i++)
for(int j=0;j<26;j++)
myfile >> rpl[i][j];
if (t!=NULL) {
dis(t->left,x);
int len1 = strlen(t->info);
int len2 = strlen(x);
{
double matrix[10][10];
int i;
for (i = 0; i <= len1; i++) {
matrix[i][0] = i;
}
for (i = 0; i <= len2; i++) {
matrix[0][i] = i;
}
for (i = 1; i <= len1; i++) {
int j;
char c1;
c1 = t->info[i-1];
for (j = 1; j <= len2; j++) {
char c2;
c2 = x[j-1];
if (c1 == c2) {
matrix[i][j] = matrix[i-1][j-1];
}
else {
double del;
double insert;
double substitute;
double minimum;
del = matrix[i-1][j] + 1;
insert = matrix[i][j-1] + 1;
substitute = matrix[i-1][j-1] + 1;
minimum = del;
if (insert < minimum) {
minimum = insert;
}
if (substitute < minimum) {
minimum = substitute;
}
matrix[i][j] = minimum;
}
}
}
if(matrix[len1][len2]<d)
{
d=matrix[len1][len2] ;
pos=t->info;
}
dis(t->right,x);
}
cout<<pos<<d;
}
}
main()
{
BST tree;
char *val,*q;
tree=NULL;
ifstream myfile;
myfile.open("doc.txt",ios::in);
while(myfile >> val)
tree=insertnode(tree,strlwr(val));
cout<<"query?";
cin>>q;
if (find(tree,strlwr(q))!=NULL)
cout<<q;
else
{
dis(tree,q);
}
getch();
return 0;
}