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

sadaf jooon

عضو جدید
سلام من این برنامه رو در ویژوال c++ به صورت کنسول نوشتم ولی خطا میده میشه بگین مشکلش کجاست

#include <iostream>
#include <conio.h>
using namespace::std;
template<class T>
class stack
{
private:
int top;
int size;
T *stk;
bool isfull();
bool isempty();
public:
stack();
void push(T);
T pop();
T top();
};
/////////////////////////////////////////
template<class T>
stack<T>::stack(int s)
{
size=s;
stk=new T;
top=-1;
}
////////////////////////////////////////////
template<class T>
void stack<T>::push(T item)
{
if (isfull())
{
cout<<"stack overflow";
return;
}
stk[++top]=item;
}
////////////////////////////////////////////////
template<class T>
T stack<T>::pop()
{
if(isempty())
{
cout<<"stack underflow";
return (T) null;
}
T temp;
temp=stk[top];
top--;
return temp;
}
////////////////////////////////////////////////////
template<class T>
T stack<T>::top()
{
if(isempyt())
{
cout<<"stack is empty";
return(T) null;

}
return stk[top];
}
//////////////////////////////////////////
template<class T>
bool stack<T>::isfull()
{
return top==size-1;
}
//////////////////////////////////////////////
template<class T>
void main()
{
stack<int>s1(10);
for (int i=0;i<10;i++)
s1.push(i);
for(int i=0;i<10;i++)
cout <<s1.pop();
}
////////////////////////////////////////////
template<class T>
stack<T>::~stack()
{
delete[] stk;
}

پیاده سازیه پشته به صورت پویاست هم حافظه هم نوع داده البته اینجا کجوکوله افتاده
 

titan22

عضو جدید
شما اینا رو چک کن
isempty() ننوشتین ویه سری غلط دیگه
اینو تست کنین
PHP:
// sad.cpp : Defines the entry point for the console application.
//

// ds.cpp : Defines the entry point for the console application.
//

#include "stdafx.h"
#include <iostream>
#include <conio.h>
using namespace::std;
template<class T>
class stack
{
private:
int top;
int size;
T *stk;
bool isfull();
bool isempty();
public:
stack(int);
~stack();
void push(T);
T pop();
T showtop();
};
/////////////////////////////////////////
template<class t>
bool stack<t>::isempty()
{
    return (top==0)?true:false;
}
//////////////////////////////////////////////
template<class T>
stack<T>::stack(int s)
{
size=s;
stk=new T[s];
top=-1;
}
////////////////////////////////////////////
template<class T>
void stack<T>::push(T item)
{
if (isfull())
{
cout<<"stack overflow";
return;
}
stk[++top]=item;
}
////////////////////////////////////////////////
template<class T>
T stack<T>::pop()
{
if(isempty())
{
cout<<"stack underflow";
return NULL;
}
T temp;
temp=stk[top];
top--;
return temp;
}
////////////////////////////////////////////////////

template<class T>
T stack<T>::showtop()
{
if(isempyt())
{
cout<<"stack is empty";
return(T) null;

}
return stk[top];
}
//////////////////////////////////////////
template<class T>
bool stack<T>::isfull()
{
return top==size-1;
}
//////////////////////////////////////////////

int main(int argc, _TCHAR* argv[])
{
stack<int>s1(10);
for (int i=0;i<10;i++)
s1.push(i);
for(int i=0;i<10;i++)
cout <<s1.pop();
}
////////////////////////////////////////////
template<class T>
stack<T>::~stack()
{
delete[] stk;
}
 
آخرین ویرایش:

titan22

عضو جدید
میشه لطفا یکی کمک کنه بگه مشکل این برنامه چیه؟
با VS2010 نوشتم باید infix رو به postfix تبدیل کنه.ولی بجای نشون دادن عملگرا سر جای خودشون اخر کار همشو از پشته برمیداره.یه مشکلی از اون اخرشه ممنون میشم کمک کنین


}
PHP:
// 33333.cpp : Defines the entry point for the console application.
//

#include "stdafx.h"
#include<iostream>
#include<vector>
#include<cstdlib>
#include<string>
#include<sstream>


using namespace std;

template<class T>
class stack
{
private:
    int top;
    int maxsize;
    T *data;
public:
    bool push(char x);
    char pop();
    char showtop();
    bool isempty();
    bool isfull();
    stack(int n);
    ~stack();
};
template<class T>
bool stack<T>::push(char x)
{
    if(!isfull())
    {
        data[top++]=x;
        return true;
    }
    return false;
}
template<class T>
char stack<T>::pop()
{
    if(isempty())
        return -1;
    return data[--top];
}
template<class T>
char stack<T>::showtop()
{
    if(isempty())
        return -1;
    return data[top-1];
}
template<class T>
bool stack<T>::isempty()
{
    return (top==0)?true:false;
}
template<class T>
bool stack<T>::isfull()
{
    return (top==maxsize)?true:false;
}
template<class T>
stack<T>::stack(int n=10)
{
    top=0;
    maxsize=n;
    data=new T[maxsize];
}
template<class T>
stack<T>::~stack()
{
    delete []data;
}
//--------------------------------------------------
int split(string str,char delim,vector<string> &tokens)
{
    stringstream st(str);
    string tmp;
    while (getline(st,tmp,delim))
        tokens.push_back(tmp);
    return tokens.size();
}
//---------------------------------------------------

int _tmain(int argc, _TCHAR* argv[])
{
    stack<int> st(20);
    vector<string> p;
    string exp;
    getline(cin,exp);
    int n=split(exp,' ',p);
    for(int i=0;i<n;i++){
        if(isdigit(p[i].c_str()[0])){
            cout<<p[i][0];
        }
        else if(p[i][0]=='+'||'-'){
                if(st.showtop()!='*'||'/')
                    st.push(p[i][0]);
                else{
                    while(st.showtop()!='*'||'/'){
                    st.pop();
                    }
                    st.push(p[i][0]);
                    }
                if(p[i][0]=='*'||'/')
                    st.push(p[i][0]);
            
        }

    
    }
while(!st.isempty())
    cout<<st.pop();
    return 0;
 

tttr

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

برنامه‌ای بنویسید که با استفاده از تفریق عمل تقسیم انجام دهد

سلام خدمت همه عزیزان

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

sadaf jooon

عضو جدید
PHP:
#include <iostream>
using namespace::std;
#define max 30
 
char pop(void);
void push(char);
int Isunder(void);
int Isover(void);
int prio(char);
 
int top=-1,i=0,j=0;
char stk[max];
char infix[max];
char postfix[max];
 
 
void main()
{
    cout << "Please enter your expression in infix form :";
    cin >> infix ;
    for(i=0;infix[i]!='\0';i++)
    {
        switch(infix[i])
        {
            case '(' :
               
                push( '(' );
                break;
 
            case ')' :
               
                while(stk[top]!='(')
                    postfix[j++]=pop();
                
 
                if (stk[top]=='(')
                    top--;
               
                break;
 
            case '/':
            case '*':
            case '+':
            case '-':
         case '^':
                if (!Isunder())
                {
                    if (prio(infix[i]) > prio(stk[top]) )
                    {
                        push(infix[i]);
                       
                    }
                    else
                    {
                        postfix[j++]=pop();
                        push(infix[i]);
 
                    }
 
                }
                else
                    push(infix[i]);
                   
                break;
           
            default :
                postfix[j++] = infix[i]    ;
               
               
        }
 
 
    }
 
        while (!Isunder())
            postfix[j++]=pop();
       
        postfix[j]='\0';
 
        cout << endl << "Your postfix expression is :" << postfix << endl ;
 
 
}
 
//// pop opertation
char pop()
{
 
    if (!Isunder())
        return stk[top--];
 
}
 
//// push operation
 
void push(char ch)
{
    if (!Isover())
        stk[++top]=ch;
    else
        cout << "Stack is full";
}
//// overflow
 
int Isover()
{
 
    if (top == max-1)
        return 1;
    else
        return 0;
 
}
 
//// underflow
 
int Isunder()
{
 
    if (top == -1)
        return 1;
    else
        return 0;
 
}
/////////////////////////////
int prio(char ch)
{
    switch(ch)
    {
        case '(' :
            return 1;
            break;
        case '-' :
            return 2;
            break;
        case '+' :
            return 3;
            break;
        case '*' :
            return 4;
            break;
        case '/' :
            return 5;
            break;
        case '^':
            return 6;
           
    }
}
این برنامشه
 

sadaf jooon

عضو جدید
سوال در مورد ليست پيوندي

سوال در مورد ليست پيوندي

1-تابعي بنويسيد که سرليست دو ليست پيوندي را دريافت کرده و ليست دوم را در انتهاي ليست اول کپي کند.
2-فرض کنيد دو ليست پيوندي l1وl2 مرتب هستند تابعي بنويسيد که سر ليست اين دو ليست را دريافت کرده واين دو ليست را در ليست سومي به گونه اي کپي کند که ليست سوم را مرتب چاپ کند.
3-چاپ عناصر ليست پيوندي از انتها به ابتدا

دوستان لطف کنيد اگر جواب اين سوالات رو ميدونيد کمک کنيد خيلي فوريه:cry:
 

infrequent

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

برنامه اي بنويسيد كه كاراكتري را از صفحه كليد گرفته و در يك فايل
باينري قرار دهد و سپس كاراكتر موجود در اين فايل را خوانده و به فايل

باينري ديگر منتقل كند آخرين كاراكتر ورودي * ميباشد
 

nahid alz

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

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

سلام،تو رو خدا هر کی این برنامه رو بلده با زبان++ cبرام بنویسه،برنامه ای که عددی را به عنوان ضلع مربع دریافت کرده و مربعی تو خالی با ستاره تولید کند.فقط خییییییلی سریع:cry::(ممنون:redface:
 

logofun

عضو جدید
دوستان یه لطفی میشه بکنین ؟ :دی
"برنامه ای بنویسید که با استفاده از آرایه پویا معدل تعدادی دانشجو را از ورودی بخواند و با استفاده از تابع دوست معدل نفر اول را چاپ کند)فیلد اختصاصی باشد) "

اینو کسی بلده ؟ :(
 

MunderLine

عضو جدید
سلام

میشه یه حلقه گذاشت که تا زمانی که عدد مقسوم منفی نشده مقسوم رو منهای مقسوم علیه کرد و هر بار شمارنده رو یکی اضاف کرد و در پایان یکی از شمارنده کم کرد و به عنوان خارج قسمت چاپ کرد.
مثلاً 8 تقسیم بر 3
کد:
حلقه: 8 منفی نیست
8 - 3 = 5
شمارنده = 1

حلقه: 5 منفی نیست
5 - 3 = 2
شمارنده = 2

حلقه: 2 منفی نیست
2 - 3 = -1
شمارنده = 3

حلقه: -1 منفی است
پس شمارنده را یکی کم کن و چاپ کن

امیدوارم مفید باشه
 

alale2011

عضو جدید
salam
chejoori mishe ye mashin hesab ba zaban c nevesht /
in mashin hesab bayad ye ebarat ro begire(bayad mesle ye mashin hesab ye ebarat az karbar begire va javabesho chap kone)
 

Mohandes*

عضو جدید
کاربر ممتاز
salam
chejoori mishe ye mashin hesab ba zaban c nevesht /
in mashin hesab bayad ye ebarat ro begire(bayad mesle ye mashin hesab ye ebarat az karbar begire va javabesho chap kone)
کد:
[FONT=Consolas][SIZE=2][FONT=Consolas][SIZE=2] 
[/SIZE][/FONT][/SIZE][/FONT][FONT=Consolas][SIZE=2][FONT=Consolas][SIZE=2][FONT=Consolas][SIZE=2]float[/SIZE][/FONT][/SIZE][/FONT][/SIZE][/FONT][FONT=Consolas][SIZE=2][FONT=Consolas][SIZE=2] a;[/SIZE][/FONT][/SIZE][/FONT]
[FONT=Consolas][SIZE=2][FONT=Consolas][SIZE=2]
      cin>>a;

       
[/SIZE][/FONT][/SIZE][/FONT][FONT=Consolas][SIZE=2][FONT=Consolas][SIZE=2][FONT=Consolas][SIZE=2]char[/SIZE][/FONT][/SIZE][/FONT][/SIZE][/FONT][FONT=Consolas][SIZE=2][FONT=Consolas][SIZE=2] key;[/SIZE][/FONT][/SIZE][/FONT]
[FONT=Consolas][SIZE=2][FONT=Consolas][SIZE=2]
       cin>>key;

       
[/SIZE][/FONT][/SIZE][/FONT][FONT=Consolas][SIZE=2][FONT=Consolas][SIZE=2][FONT=Consolas][SIZE=2]switch[/SIZE][/FONT][/SIZE][/FONT][/SIZE][/FONT][FONT=Consolas][SIZE=2][FONT=Consolas][SIZE=2] (key)[/SIZE][/FONT][/SIZE][/FONT]
[FONT=Consolas][SIZE=2][FONT=Consolas][SIZE=2]
       {

       
[/SIZE][/FONT][/SIZE][/FONT][FONT=Consolas][SIZE=2][FONT=Consolas][SIZE=2][FONT=Consolas][SIZE=2]case[/SIZE][/FONT][/SIZE][/FONT][/SIZE][/FONT][FONT=Consolas][SIZE=2][FONT=Consolas][SIZE=2][FONT=Consolas][SIZE=2]'*'[/SIZE][/FONT][/SIZE][/FONT][/SIZE][/FONT][FONT=Consolas][SIZE=2][FONT=Consolas][SIZE=2]:[/SIZE][/FONT][/SIZE][/FONT][FONT=Consolas][SIZE=2][FONT=Consolas][SIZE=2][FONT=Consolas][SIZE=2]float[/SIZE][/FONT][/SIZE][/FONT][/SIZE][/FONT][FONT=Consolas][SIZE=2][FONT=Consolas][SIZE=2] b ;cin>>b;cout<<[/SIZE][/FONT][/SIZE][/FONT][FONT=Consolas][SIZE=2][FONT=Consolas][SIZE=2][FONT=Consolas][SIZE=2]"="[/SIZE][/FONT][/SIZE][/FONT][/SIZE][/FONT][FONT=Consolas][SIZE=2][FONT=Consolas][SIZE=2]<<(a*b); [/SIZE][/FONT][/SIZE][/FONT][FONT=Consolas][SIZE=2][FONT=Consolas][SIZE=2][FONT=Consolas][SIZE=2]break[/SIZE][/FONT][/SIZE][/FONT][/SIZE][/FONT][FONT=Consolas][SIZE=2][FONT=Consolas][SIZE=2] ;[/SIZE][/FONT][/SIZE][/FONT]
[FONT=Consolas][SIZE=2][FONT=Consolas][SIZE=2]
       
[/SIZE][/FONT][/SIZE][/FONT][FONT=Consolas][SIZE=2][FONT=Consolas][SIZE=2][FONT=Consolas][SIZE=2]case[/SIZE][/FONT][/SIZE][/FONT][/SIZE][/FONT][FONT=Consolas][SIZE=2][FONT=Consolas][SIZE=2][FONT=Consolas][SIZE=2]'+'[/SIZE][/FONT][/SIZE][/FONT][/SIZE][/FONT][FONT=Consolas][SIZE=2][FONT=Consolas][SIZE=2]:[/SIZE][/FONT][/SIZE][/FONT][FONT=Consolas][SIZE=2][FONT=Consolas][SIZE=2][FONT=Consolas][SIZE=2]float[/SIZE][/FONT][/SIZE][/FONT][/SIZE][/FONT][FONT=Consolas][SIZE=2][FONT=Consolas][SIZE=2] c ;cin>>c;cout<<[/SIZE][/FONT][/SIZE][/FONT][FONT=Consolas][SIZE=2][FONT=Consolas][SIZE=2][FONT=Consolas][SIZE=2]"="[/SIZE][/FONT][/SIZE][/FONT][/SIZE][/FONT][FONT=Consolas][SIZE=2][FONT=Consolas][SIZE=2]<<(a+c); [/SIZE][/FONT][/SIZE][/FONT][FONT=Consolas][SIZE=2][FONT=Consolas][SIZE=2][FONT=Consolas][SIZE=2]break[/SIZE][/FONT][/SIZE][/FONT][/SIZE][/FONT][FONT=Consolas][SIZE=2][FONT=Consolas][SIZE=2] ;[/SIZE][/FONT][/SIZE][/FONT]
[FONT=Consolas][SIZE=2][FONT=Consolas][SIZE=2]
       
[/SIZE][/FONT][/SIZE][/FONT][FONT=Consolas][SIZE=2][FONT=Consolas][SIZE=2][FONT=Consolas][SIZE=2]case[/SIZE][/FONT][/SIZE][/FONT][/SIZE][/FONT][FONT=Consolas][SIZE=2][FONT=Consolas][SIZE=2][FONT=Consolas][SIZE=2]'/'[/SIZE][/FONT][/SIZE][/FONT][/SIZE][/FONT][FONT=Consolas][SIZE=2][FONT=Consolas][SIZE=2]:[/SIZE][/FONT][/SIZE][/FONT][FONT=Consolas][SIZE=2][FONT=Consolas][SIZE=2][FONT=Consolas][SIZE=2]float[/SIZE][/FONT][/SIZE][/FONT][/SIZE][/FONT][FONT=Consolas][SIZE=2][FONT=Consolas][SIZE=2] d ;cin>>d;cout<<[/SIZE][/FONT][/SIZE][/FONT][FONT=Consolas][SIZE=2][FONT=Consolas][SIZE=2][FONT=Consolas][SIZE=2]"="[/SIZE][/FONT][/SIZE][/FONT][/SIZE][/FONT][FONT=Consolas][SIZE=2][FONT=Consolas][SIZE=2]<<(a/d); [/SIZE][/FONT][/SIZE][/FONT][FONT=Consolas][SIZE=2][FONT=Consolas][SIZE=2][FONT=Consolas][SIZE=2]break[/SIZE][/FONT][/SIZE][/FONT][/SIZE][/FONT][FONT=Consolas][SIZE=2][FONT=Consolas][SIZE=2] ;[/SIZE][/FONT][/SIZE][/FONT]
[FONT=Consolas][SIZE=2][FONT=Consolas][SIZE=2]
       
[/SIZE][/FONT][/SIZE][/FONT][FONT=Consolas][SIZE=2][FONT=Consolas][SIZE=2][FONT=Consolas][SIZE=2]case[/SIZE][/FONT][/SIZE][/FONT][/SIZE][/FONT][FONT=Consolas][SIZE=2][FONT=Consolas][SIZE=2][FONT=Consolas][SIZE=2]'-'[/SIZE][/FONT][/SIZE][/FONT][/SIZE][/FONT][FONT=Consolas][SIZE=2][FONT=Consolas][SIZE=2]:[/SIZE][/FONT][/SIZE][/FONT][FONT=Consolas][SIZE=2][FONT=Consolas][SIZE=2][FONT=Consolas][SIZE=2]float[/SIZE][/FONT][/SIZE][/FONT][/SIZE][/FONT][FONT=Consolas][SIZE=2][FONT=Consolas][SIZE=2] e ;cin>>e;cout<<[/SIZE][/FONT][/SIZE][/FONT][FONT=Consolas][SIZE=2][FONT=Consolas][SIZE=2][FONT=Consolas][SIZE=2]"="[/SIZE][/FONT][/SIZE][/FONT][/SIZE][/FONT][FONT=Consolas][SIZE=2][FONT=Consolas][SIZE=2]<<(a-e); [/SIZE][/FONT][/SIZE][/FONT][FONT=Consolas][SIZE=2][FONT=Consolas][SIZE=2][FONT=Consolas][SIZE=2]break[/SIZE][/FONT][/SIZE][/FONT][/SIZE][/FONT][FONT=Consolas][SIZE=2][FONT=Consolas][SIZE=2] ;[/SIZE][/FONT][/SIZE][/FONT]
[FONT=Consolas][SIZE=2][FONT=Consolas][SIZE=2]
       [/SIZE][/FONT][/SIZE][/FONT]
[FONT=Consolas][SIZE=2][FONT=Consolas][SIZE=2]
       }
[/SIZE][/FONT][/SIZE][/FONT]
 

alale2011

عضو جدید
mamnoon babate javab hai ke dadin, man be zabane c mikham,faghat ham beine 2 adad nabashe ,ye barnamei ke betoone masalan ebarate 14-(1+(2*3)/6) ro hesab kone
 

ناآشنا

عضو جدید
کاربر ممتاز
mamnoon babate javab hai ke dadin, man be zabane c mikham,faghat ham beine 2 adad nabashe ,ye barnamei ke betoone masalan ebarate 14-(1+(2*3)/6) ro hesab kone

کد:
float a,b,c;
char o,w;
main()
{
do
{
clrscr();
printf("\t\t*** CALCULATOR ***\n\n\t");
printf("1 -> Arithmetic Calculation\n\n\t");
printf("2 -> Trigonometric & Logical calculations\n");
scanf("\n%c",&o);
switch(o)
{
case '1':
ari();
break;
case '2':
trig();
break;
default:
printf(" ");
}
printf("\n\nDo you want to continue:\t");
scanf("\n\n%c",&o);
}while(o = = 'y');
getch();
}


ari()
{
printf("\n\t***Arithmetic Calculation***\n\n");
scanf("\n%f",&a);
scanf("\n%c",&o);
switch(o)
{
case '+':
scanf("\n%f",&b);
c = a + b;
printf("\t= %.2f",c);
break;
case '-':
scanf("\n%f",&b);
c = a - b;
printf("\t= %.2f",c);
break;
case '*':
scanf("\n%f",&b);
c = a * b;
printf("\t= %.2f",c);
break;
case '/':
scanf("\n%f",&b);
c = a / b;
printf("\t= %.2f",c);
break;
default:
printf("Check the operator");
}
}

trig()
{
printf("\n\t***Trigonometric & Logical calculations***");
printf("\n\n\ts -> Sin");
printf("\n\n\tc -> Cos");
printf("\n\n\tt -> Tan");
printf("\n\n\tl -> Log");
printf("\n\n\tp -> Power");
printf("\n\n\tr -> Square Root\n\n");
scanf("\n%c",&o);
switch(o)
{
case 's':
scanf("\n%f",&a);
b=sin(a);
printf("\tsin %.0f = %.2f",a,b);
break;
case 'c':
scanf("\n%f",&a);
b=cos(a);
printf("\tcos %.0f = %.2f",a,b);
break;
case 't':
scanf("\n%f",&a);
b=tan(a);
printf("\ttan %.0f = %.2f",a,b);
break;
case 'l':
scanf("\n%f",&a);
b=log10(a);
printf("\tlog %.0f = %.4f",a,b);
break;
case 'p':
scanf("\n%f",&a);
scanf("\n%f",&b);
c=pow(a,b);
printf("\t%.0f to the Power %.0f = %.2f",a,b,c);
break;
case 'r':
scanf("\n%f",&a);
b=sqrt(a);
printf("\troot %.0f = %.2f",b);
break;
default:
printf("Check the values");
}
}

اینم خروجی:


1 -> Arithmetic Calculation

2 -> Trigonometric & Logical calculations

1

***Arithmetic Calculation***

2+3
= 5.00

Do you want to continue: y


***CALCULATOR***

1 -> Arithmetic Calculation

2 -> Trigonometric & Logical calculations

2

***Trigonometric & Logical calculations***

s -> Sin
c -> Cos
t -> Tan
l -> Log
p -> Power
r -> Square Root
s 0
sin 0 = 0.00
Do you want to continue: n
 

nahid alz

عضو جدید
متقارن بودن یک رشته

متقارن بودن یک رشته

سلام،تو رو خدا هر کی می تونه این برنامه رو با زبان سی پلاس پلاس برام بنویسه،خییییییییییلی ضروریه:cry::(
برنامه ای که یک رشته بگیرد و بررسی کند که ایا متقارن است یا نه؟
(مثلا کلمه ی درد که چه از اول بخونیم چه از اخر همون درد خونده میشه)
ممنون:heart:
 

resentlove

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

antengogoli21

عضو جدید
سلام دوستان
برای تعریف کلاس shapeچه متغیرایی لازمه؟!!!!
 

nazaninfatemeh

عضو جدید
سلام دوستان عزیز
من برنام مرتب کردن 10 عدد به صورت صعودی در زبان ++C رو میخوام لطفا
ممنون
 

Sina.Rezaei

اخراجی موقت
سلام دوستان عزیز من برنام مرتب کردن 10 عدد به صورت صعودی در زبان ++C رو میخوام لطفاممنون


کد:
#include <iostream>
#include <iomanip>
#include <conio.h>
using namespace std;


int main()
{


    int x[10], s;
    int j,i;


    for (int i = 1; i <= 10; i++)
    {
        cout << setw(11) << i << ": ";
        cin >> x[i];


    }
    for (int i = 1; i < =10; i++)
    {
        for (int j = i+1; j <= 10; j++)
            if (x[j] < x[i])
            {
                s = x[j];
                x[j] = x[i];
                x[i] = s;
            }
    }


    cout << endl;


    for (int i = 1; i <= 10; i++)
    {
        cout << i << ": ";
        cout << x[i] << "\t";


        if (i % 5 == 0)
        {
            cout << endl;
        }
    }


            return 0;
}
 
آخرین ویرایش:

♥@SH!M♥

کاربر حرفه ای
کاربر ممتاز
سلام دوستان عزیز
من برنام مرتب کردن 10 عدد به صورت صعودی در زبان ++C رو میخوام لطفا
ممنون

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

امیدوارم برنامه درس برات کار کن..تست نکردمش!
موفق باشی..

کد:
[TABLE="width: 574, align: right"]
[TR]
[TD]#include <iostream>
#include <iomanip>
#include <conio.h>
using namespace std;
 
int main()
{
 
    int x[11], s;
    int j,i;
 
    for (int i = 1; i < 11; i++)
    {
        cout << setw(11) << i << ": ";
        cin >> x[i];
 
    }
    for (int i = 1; i < 11; i++)
    {
        for (int j = i+1; j < 11; j++)
            if (x[j] < x[i])
            {
                s = x[j];
                x[j] = x[i];
                x[i] = s;
            }
    }
 
    cout << endl;
 
    for (int i = 1; i < 11; i++)
    {
        cout << i << ": ";
        cout << x[i] << "\t";
 
        if (i % 5 == 0)
        {
            cout << endl;
        }
    }
 
            return 0;
}
[/TD]
[/TR]
[/TABLE]

مطالب مرتبط
 

nazaninfatemeh

عضو جدید
مقسی آجیهه
ولی من خودم مینویسمشون بخدا این برنامه رو برا زبان اسمبلی میخوام چون توش مشکل داشتم و سی رو بهتر میفهمم میخواستم ی گا رو سی بندازم تا بتونم اسمبلیشو خدم بنویسم!
من دخمل خوفیم دلس خونم!:)

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

امیدوارم برنامه درس برات کار کن..تست نکردمش!
موفق باشی..

کد:
[TABLE="width: 574, align: right"]
[TR]
[TD]#include <iostream>
#include <iomanip>
#include <conio.h>
using namespace std;
 
int main()
{
 
    int x[11], s;
    int j,i;
 
    for (int i = 1; i < 11; i++)
    {
        cout << setw(11) << i << ": ";
        cin >> x[i];
 
    }
    for (int i = 1; i < 11; i++)
    {
        for (int j = i+1; j < 11; j++)
            if (x[j] < x[i])
            {
                s = x[j];
                x[j] = x[i];
                x[i] = s;
            }
    }
 
    cout << endl;
 
    for (int i = 1; i < 11; i++)
    {
        cout << i << ": ";
        cout << x[i] << "\t";
 
        if (i % 5 == 0)
        {
            cout << endl;
        }
    }
 
            return 0;
}[/TD]
[/TR]
[/TABLE]

مطالب مرتبط
 

ناآشنا

عضو جدید
کاربر ممتاز
mamnoon babate javab hai ke dadin, man be zabane c mikham,faghat ham beine 2 adad nabashe ,ye barnamei ke betoone masalan ebarate 14-(1+(2*3)/6) ro hesab kone

برای محاسبه یه عبارت ریاضی باید اونو به صورت یه رشته تو آرایه ذخیره کنی و بعد شروع به خوندن تک تک کاراکتر ها کنی و وقتی به عملگر ها رسیدی طبق اون عملگر عملیات لازم رو انجام بدی برای مثال فرض کن یه همچین عبارتی داریم :"2+51"
شما باید برنامه رو جوری بنویسی که وقتی به عمگر + رسید کاراکتر های قبل از + رو تا جایی که به عملگر دیگه یا به ابتدای آرایه نرسیده جدا و تبدیل به عدد کنه و بعد همین عملیات رو برای عدد بعد از + هم انجام بده
برای اولویت بندی عملگر ها هم مثلا فرض کن فقط دو عملگر * و + رو داریم که اولویت اونا با هم فرق داره .میتونی با تعریف یه همچین چیزی


کد:
char *function="*+";
for(int i=0;i<2;i++)
    {
  for(j=0;j<strlen(s);j++)
  {
   if(s[j]==*function)
   {
    ...
   }
  }
  function++;
 }

اولویت ها رو رعایت کنی یعنی ابتدا جواب عملگر * به دست میاد و بعد +
به هر حال این روشی بود که خودم استفاده کردم ولی روش دیگه هم که به ذهنم میرسه اینه که در حین ورود اعداد جواب رو محاسبه کنید( تقریبا مثل ماشین حساب ویندوز)
من فعلا عملگر () رو توی برنامه به حساب نمیارم بنابراین بدون عملگر () ,عملگر ها به دو دسته تقسیم بندی میشن :
دسته اول : * % /
دسته دوم : + -
حالا فرض کنید که کاربر همچین عبارتی رو وارد میکنه : "5+2*8"
باید برنامه جوری باشه که به محض اینکه به عملگر های دسته اول بر خورد کرد عملیات مورد نظر رو انجام بده یعنی عبارت بشه "5+16".
در صورتی که عملگر های دسته دوم ابتدا وارد شدن مثلا "2*8+5" باید برنامه صبر کنه تا ببینه عملگر بعدی که وارد میشه چی هست ، در صورتی که از دسته اول بود سریعا جواب اونو حساب کنه یعنی عبارتمون بشه : "16+5" و اگه عملگر دومی که وارد شده از دسته دوم بود ابتدا جواب عملگر اولی رو حساب کنه و بعد به سراغ عملگر جدید بره. حالا اگه الگوریتم رو دست متوجه شده باشی میتونی عملگر () رو هم بهشون اضافه کنی
به هر حال امیدوارم تونسته باشم منظورم رو درست برسونم
 

ناآشنا

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

دوست عزیز من یک نمونه برنامه که برای رسم مستطیل هست برات میذارم میتونی ازش ایده بگیری. به زبان سی پلاس پلاس هست.
کد:
#include <string>
#include <iostream>

using namespace std;

void displayFrame( int w, int h ) {
    assert( h >= 2 );   
    assert( w >= 2 );  

    
    cout << string( w, '*' ) << endl;
    
    
    for( int j = 0; j < h - 2; ++j )
    cout<< '*'<< string(w - 2, ' ')<< '*' << endl;
        
  
    cout << string( w, '*' ) << endl;
    
}

int main()
{
int width, height;

cout << "What width (greater than 4) frame would you like to draw?";
cin >> width;
cout << "What height (greater than 4) frame would you like to draw? ";
cin >> height;
cout << endl;
displayFrame(width, height);
cout << endl << endl;
return 0;
}
 

Similar threads

بالا