Olympiad

New Member
ارسال ها
1,268
لایک ها
134
امتیاز
0
الان بخوايم عمل جمع رو با استفاده از رشته ها انجام بديم ................................... ميشه كدشو بنويسيد.
 

SABB

New Member
ارسال ها
704
لایک ها
25
امتیاز
0
Olympiad گفت
الان بخوايم عمل جمع رو با استفاده از رشته ها انجام بديم ................................... ميشه كدشو بنويسيد.
منظورتون رو متوجه نشدم
 

Olympiad

New Member
ارسال ها
1,268
لایک ها
134
امتیاز
0
SABB گفت
Olympiad گفت
الان بخوايم عمل جمع رو با استفاده از رشته ها انجام بديم ................................... ميشه كدشو بنويسيد.
منظورتون رو متوجه نشدم
ورودي دو رشته باشد و سپس رشته ها (اعداد) را با هم جمع كند.
 

SABB

New Member
ارسال ها
704
لایک ها
25
امتیاز
0
Olympiad گفت
SABB گفت
Olympiad گفت
الان بخوايم عمل جمع رو با استفاده از رشته ها انجام بديم ................................... ميشه كدشو بنويسيد.
منظورتون رو متوجه نشدم
ورودي دو رشته باشد و سپس رشته ها (اعداد) را با هم جمع كند.
کد
#include<stdio.h>
#include<conio.h>
#include<string.h>
#include<math.h>
int main()
{
    char s1[100],s2[100];
    int l1,l2,n1=0,n2=0;
    gets(s1);
    gets(s2);
    l1=strlen(s1);
    l2=strlen(s2);
    for(int i=0;i<l1;i++)
	   n1+=pow(10,l1-i-1)*(s1[i]-48);
    for(i=0;i<l2;i++)
	   n2+=pow(10,l2-i-1)*(s2[i]-48);
    printf("%d",n1+n2);
    getch();
    return 1374;
}
 

SABB

New Member
ارسال ها
704
لایک ها
25
امتیاز
0
SABB گفت
[center:2892718637]
[/center:2892718637]برنامه ای بنویسید که یک تساوی جبری فقط شامل عملگراهای +،-،* و / گرفته و درستی آن را چک کند.
مثلا برای:
کد
4*2/8=1
خروجی Yes است.
فکر کنم این سوال فراموش شد

پ.ن. هیچ مجهولی وجود ندارد و فقط عدد استفاده می شود و همچنین سمت راست تساوی فقط یک عدد است.
 

SABB

New Member
ارسال ها
704
لایک ها
25
امتیاز
0
می خوام برنامه هام رو تو Dev کامپایل کنم می گه Access is denied !!
چیکار کنم؟؟؟!!!
 

Olympiad

New Member
ارسال ها
1,268
لایک ها
134
امتیاز
0
SABB گفت
SABB گفت
برنامه ای بنویسید که یک تساوی جبری فقط شامل عملگراهای +،-،* و / گرفته و درستی آن را چک کند.
مثلا برای:
کد
4*2/8=1
خروجی Yes است.
حداكثر چند تا عملگر هستند؟!؟!؟!؟؟!چون اگه زياد باشن بايد الويت ها و ....... رو بگيم كه فكر نكنم كار ساده اي باشه!!!!!!!!!!!!
پ.ن : منظورتون Dev C++ هست؟؟!!؟!؟!؟!؟هنگامي كه ميخواين كامپايل كنيد ، اين ارور رو ميده؟؟؟!؟!؟
مال من كه ارور نميده!!!!!!!!!!!!!!!!!!!!
 

SABB

New Member
ارسال ها
704
لایک ها
25
امتیاز
0
Olympiad گفت
SABB گفت
SABB گفت
برنامه ای بنویسید که یک تساوی جبری فقط شامل عملگراهای +،-،* و / گرفته و درستی آن را چک کند.
مثلا برای:
کد
4*2/8=1
خروجی Yes است.
حداكثر چند تا عملگر هستند؟!؟!؟!؟؟!چون اگه زياد باشن بايد الويت ها و ....... رو بگيم كه فكر نكنم كار ساده اي باشه!!!!!!!!!!!!
پ.ن : منظورتون Dev C++ هست؟؟!!؟!؟!؟!؟هنگامي كه ميخواين كامپايل كنيد ، اين ارور رو ميده؟؟؟!؟!؟
مال من كه ارور نميده!!!!!!!!!!!!!!!!!!!!
فرض کنید حداکثر 4 عملگر داریم. (بازم باید اولویت رو بگیریم!)
 

Goharshady

New Member
ارسال ها
2,239
لایک ها
166
امتیاز
0
SABB گفت
Olympiad گفت
erfankh گفت
5
کد
#include<iostream.h> 
#include<conio.h> 
#include<iostream.h> 
int main() 
{ 
    char a[100]; 
    cin>>a; 
    for(int i=strlen(a)-1;i>-1;i--) 
		  cout<<a[I]; 
    cout<<endl; 
    getch(); 
    return 0; 
}
[/I]
ببخشيد بي زحمت اگه ميشه راجع به تابع strlen يه توضيح مختصر بديد
این تابع طول رشته رو اندازه گیری می کنه.
و در هدر string.h است.

اشتباه می کنید. در iostream و cstdio است. تابعی که در string است std::length نام دارد که برای متغیر نوع string به کار می رود. مگر این که از Borland استفاده کنید.
 

Goharshady

New Member
ارسال ها
2,239
لایک ها
166
امتیاز
0

Goharshady

New Member
ارسال ها
2,239
لایک ها
166
امتیاز
0
SABB گفت
می خوام برنامه هام رو تو Dev کامپایل کنم می گه Access is denied !!
چیکار کنم؟؟؟!!!
uninstall کنید و دوباره نصب کنید.
 

Goharshady

New Member
ارسال ها
2,239
لایک ها
166
امتیاز
0
[center:2d73988e4b]
[/center:2d73988e4b]
از فایل بخونیم یا از کابر بپرسیم؟
 

SABB

New Member
ارسال ها
704
لایک ها
25
امتیاز
0

SABB

New Member
ارسال ها
704
لایک ها
25
امتیاز
0
Goharshady گفت
SABB گفت
Olympiad گفت
erfankh گفت
5
کد
#include<iostream.h> 
#include<conio.h> 
#include<iostream.h> 
int main() 
{ 
    char a[100]; 
    cin>>a; 
    for(int i=strlen(a)-1;i>-1;i--) 
		  cout<<a[I]; 
    cout<<endl; 
    getch(); 
    return 0; 
}
[/I]
ببخشيد بي زحمت اگه ميشه راجع به تابع strlen يه توضيح مختصر بديد
این تابع طول رشته رو اندازه گیری می کنه.
و در هدر string.h است.

اشتباه می کنید. در iostream و cstdio است. تابعی که در string است std::length نام دارد که برای متغیر نوع string به کار می رود. مگر این که از Borland استفاده کنید.
دقیقا همین کار رو می کنم

به نظر من Borland خیلی بهتره.
 

Goharshady

New Member
ارسال ها
2,239
لایک ها
166
امتیاز
0
[center:c702b0dd50]6[/center:c702b0dd50]با string.replace حل می شه. الآن خیلی خوابم می آید. فردا کدشو می ذارم.
 

Olympiad

New Member
ارسال ها
1,268
لایک ها
134
امتیاز
0
من توي يه برنامه ي فوق العاده ساده گير افتادم!!!!!!!!!!!!

برنامه اي بنويسيد كه x را گرفته و حاصل
را به خروجي بدهد.........

موقعي كه من اين كد رو مي نويسم ، خروجي رو چرت و پرت چاپ مي كنه!!!
کد
#include <stdio.h>
#include <conio.h>
int main()
{
    float t;
    int x; 
    printf("Enter a number:");
    scanf("%d",&x);
    t=1/((x*x)+x+3);
    printf("%f",t);
    getch();
    return 0;
}
اما وقتي اين كد رو مي نويسم ، درست كار مي كنه‌ !!!!!!!!!
کد
#include <stdio.h>
#include <conio.h>
int main()
{
    float t,k;
    int x; 
    printf("Enter a number:");
    scanf("%d",&x);
    t=(x*x)+x+3;
    k=1/t;
    printf("%f",k);
    getch();
    return 0;
}
مشكل كجا هست؟؟؟؟؟؟؟؟؟؟؟؟؟
ضمنا وقتي مي خوام x رو از نوع float بنويسم ، بازم خروجي چرت و پرت مي نويسه!!!!!!!!!!!!!
چرا؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟بايد چيكار كنم؟؟؟؟؟؟؟؟؟؟؟؟
 

mohammad_72

New Member
ارسال ها
302
لایک ها
5
امتیاز
0
تو کد اول وقتی اینو می‌نویسید :
t=1/((x*x)+x+3);
میاد می‌بینه x از نوعه int هست یعنی مخرج صحیحه
صورت هم که صحیحه ( 1 از نوع int محسوب میشه)
پس وقتی تقسیم می‌کنه جزء صحیحشو بهتون تحویل میده.
اگه اینجوری بنویسین درست می‌گیره :
t=1.0f/((x*x)+x+3);
یا اینجوری :
t=(float)1/((x*x)+x+3);
 

Olympiad

New Member
ارسال ها
1,268
لایک ها
134
امتیاز
0
mohammad_72 گفت
تو کد اول وقتی اینو می‌نویسید :
t=1/((x*x)+x+3);
میاد می‌بینه x از نوعه int هست یعنی مخرج صحیحه
صورت هم که صحیحه ( 1 از نوع int محسوب میشه)
پس وقتی تقسیم می‌کنه جزء صحیحشو بهتون تحویل میده.
اگه اینجوری بنویسین درست می‌گیره :
t=1.0f/((x*x)+x+3);
یا اینجوری :
t=(float)1/((x*x)+x+3);
ممنون .... ولي اگه بخوام float، x باشه ؟؟؟؟؟؟؟؟؟؟بايد چيكار كنم؟!!؟!؟!؟
وقتي مي نويسم :
کد
float x,t;
دوباره چرت و پرت مي نوسه .... براي اين مورد چيكار كنم!؟
 

Goharshady

New Member
ارسال ها
2,239
لایک ها
166
امتیاز
0
[center:7cf545be94]
[/center:7cf545be94]
این هم جواب سوال 6 ، ضرب و تقسیم و جمع و تفریق داره ، ضمنا به جای string.replace از تابع بازگشتی استفاده کردم. بابت تاخیر هم متاسفم ، اینترنتم مشکل پیدا کرده بود.
http://snipt.net/Goharshady/is-this-equation-all-right
 

Goharshady

New Member
ارسال ها
2,239
لایک ها
166
امتیاز
0
[center:3e338b14a2]
[/center:3e338b14a2]یادم رفت بگم که هیچ محدودیتی هم در تعداد عملگرها نداره.
 
بالا