İlk həqiqi ədədi dəyişəninə oxuyuruq. Daha sonra qalan sətiri cütlərə bölürük: əməliyyat simvolu və həqiqi ədəd.
Cütləri (simvol, həqiqi ədəd) ardıcıl şəkildə oxuyuruq, müvafiq əməliyyatları yerinə yetiririk.
Alqoritmin icrası
İlk həqiqi ədədi dəyişəninə oxuyuruq.
scanf("%d",&res);Əməliyyat işarəsini (toplama və ya çıxma) və onun ardınca gələn həqiqi ədədi oxuyuruq. -i -ə əlavə edirik və ya -dən -i çıxırıq.
while (scanf("%c%d", &ch, &x) == 2)
if (ch == '+') res += x; else res -= x;Hesablamanın nəticəsini çıxarırıq.
printf("%d\n",res);Alqoritmin icrası — iostream
İlk həqiqi ədədi dəyişəninə oxuyuruq.
cin >> res;Giriş məlumatlarını faylın sonuna qədər oxuyuruq. Əməliyyat işarəsini (toplama və ya çıxma) və onun ardınca gələn həqiqi ədədi oxuyuruq.
while (cin >> ch >> x)-i -ə əlavə edirik və ya -dən -i çıxırıq.
if (ch == '+') res += x; else res -= x;Hesablamanın nəticəsini çıxarırıq.
cout << res << endl;Java icrası
import java.util.*;
public class Main
{
public static void main(String[] args)
{
Scanner con = new Scanner(System.in);
String s = con.nextLine();
StringTokenizer st1 = new StringTokenizer(s, "+-");
StringTokenizer st2 = new StringTokenizer(s, "0123456789");
int res = Integer.parseInt(st1.nextToken());
while (st1.hasMoreTokens())
{
int x = Integer.parseInt(st1.nextToken());
if (st2.nextToken().equals("+")) res += x;
else res -= x;
}
System.out.println(res);
con.close();
}
}Python icrası
Verilən ifadənin dəyərini hesablayırıq və nəticəni çıxarırıq.
eval() funksiyası sətiri Python ifadəsi kimi hesablayır və nəticəni qaytarır.
print(eval(input()))