بۇ كود تەكشۈرۈش سۇپىسى قانداق تەرجىمىتېر ۋە تەرجىمە ئۇسلۇبلىرىنى قوللىنىدۇ ؟:Q
مەشغۇلات سىستىمىسىدا يۈگۈرەيدۇUbuntuLinux بۇ سۇپا:A
دەل بۇسۇپىنىڭ س\س پلۇس-پلۇس تىل پروگرامما تەرجىمە مۇھىتى GNU GCC/G++
تىلىنىڭ تەرجىمە مۇھىتىpascal Free Pascal
تىلىنىڭ تەرجىمە مۇھىتى ھېسابلىنىدۇ.Java openjdk-7
| C: | gcc Main.c -o Main -fno-asm -Wall -lm --static -std=c99 -DONLINE_JUDGE
#pragma GCC optimize ("O2") بۇ ئارقىلىق قولدا كرگۈزۈش چىقىرىش ئەلالاشتۇرۇشقىمۇ بولىدۇ
|
| C++: | g++ -fno-asm -Wall -lm --static -std=c++11 -DONLINE_JUDGE -o Main Main.cc |
| Pascal: | fpc Main.pas -oMain -O1 -Co -Cr -Ct -Ci |
| Java: | javac -J-Xms32m -J-Xmx256m Main.java
*Java has 2 more seconds and 512M more memory when running and judging. |
:سىستىما تىل تەرجىمىتېر نەشىر نۇسخا پايدىلىنىش كۆرسەتكۈچى
Gcc version 9.3.0 (Ubuntu 9.3.0-17ubuntu1~20.04)
Glibc 2.31-0ubuntu9.2
Free Pascal Compiler version 3.0.4+dfsg-23 [2019/11/25] for x86_64
Openjdk "14.0.2"
Python 3.8.5
پروگىرامما قانداق يېزىش چىقىرىش ئىلىپ بارىدۇ ؟ قانداق پىرىنسىپقا بويسىنىدۇ ؟:Q
ئۆلچەملىك كىرگۈزۈش ئارقىلىق ئۇچۇرنى ئوقۇيدۇ stdin('Standard Input') :A
ئۆلچەملىك يېزىش ئارقىلىق ئۇچۇرنى چىقىرىدۇ. stdout('Standard Output')
نى ئىشلەتسىڭىز بولىدۇ.'scanf' تىلىدا C,نى ئىشلەتسىڭىز 'cin' تىلىدا C++
نى ئىشلەتسىڭىز بولىدۇ.'printf' تىلىدا C,نى ئىشلەتسىڭىز 'cout' تىلىدا C++
باشقا تىللاردا شۇ تىلنىڭ ئۆلچەملىك ئوقۇش-يېزىشنى ئىشلەتسىڭىز بولىدۇ
ئەگەر ئۆلچەملىك ئوقۇش-يېزىشنى ئىشلەتمەي،ھۆججەت ئوقۇش-يېزىشنى ئىشلەتسىڭىز بۇ سۇپا يۈرۈش خاتا دەپ نەتىجە چىقىرىپ بىرىدۇ
Runtime Error
تۆۋەندە 1000 سوئالنىڭ ئۆلچەملىك كودى بىرىلىدۇ
C++:
#include <iostream>
using namespace std;
int main(){
int a,b;
cin >> a >> b;
cout << a+b << endl;
return 0;
}
C:
#include <stdio.h>
int main(){
int a,b;
scanf("%d %d",&a, &b);
printf("%d\n",a+b);
return 0;
}
تۆۋەندىكىلىرى كۆپ كىرگۈزۈش ئەھۋاللىرىنىڭ كودى،1000 سوئالنىڭ كودى ئەمەس
PASCAL:
program p1001(Input,Output);
var
a,b:Integer;
begin
while not eof(Input) do
begin
Readln(a,b);
Writeln(a+b);
end;
end.
import java.util.*;
public class Main{
public static void main(String args[]){
Scanner cin = new Scanner(System.in);
int a, b;
while (cin.hasNext()){
a = cin.nextInt(); b = cin.nextInt();
System.out.println(a + b);
}
}
}
نىمىشقا كومپۇتېرىمدا مۇۋاپپىقىيەتلىك يۈرگەن كود ب سۇپىدا ئۆتەلمەيدۇ ؟Q
نىڭ ئۇسلۇبىغا تېخىمۇ بەك ئوخشايدۇc/c++ گە ئوخشىمايدۇ،VC6 نىڭ تەرجىمە ئۇسلۇبى GCC:A
سىستىما چىقارغان نەتىجىلەر نىمە مەنىدە؟:Q
تەپسىلانى تۆۋىندىكىچىە :A
سىستىما ئالدىراش،ئۆچرەتتە كۈتۈۋاتىدۇ :Pending
سان-سىپىر سەۋەپلىك سىستىما قايتا تەكشۈرۈشتە:Pending Rejudge
تەرجىمە قىلىنىۋاتىدۇ:Compiling
!كود يۈرۈۋاتىدۇ ھەم تەكشۈرۈشتە:Running & Judging
!مۇبارەك بولسۇن ،كودىڭىز بارلىق سىناق نۇقتىلىرىدىن مۇۋاپپىقىيەتلىك ئۆتتى:Accepted
جاۋاب توغرا ، ئەمما لىكىن فورمات چىقىرىشتا مەسىلە كۆرۈلدى:Presentation Error
:Wrong Answer
جاۋابىڭىز خاتا!!! ئۈلگە كىرگۈزۈش چىقىرىشتىنلا ئۆتكەن كود توغرا كود بولۇشى ناتايىن،تېخىمۇ ئىنچىكە ئويلىنىپ بېقىڭ،ئارقا سۇپىدا يەنە باشقا كىرگۈزۈش چىقىرىشلار بار
كودىڭىز بەلگىلەنگەن چەكلىك ۋاقىت ئىچىدە بارلىق سىناق نۇقتىلىرىدىن ئۆتۈپ بولالمىدى:Time Limit Exceeded
كودىڭىز چەكلىمىدىن يۇقرى ئىچكى ساقلىغۇچ سەرىپ قىلدى:Memory Limit Exceeded
كودىڭىز بەك كۆپ ئۇچۇر چىقاردى،تەپسىلى كۆرۈپ بېقىڭ ،ئادەتتە چىقىرىش 1 مىگابايىتتىن ئاشمايدۇ:Output Limit Exceeded
:Runtime Error
يۈرۈش خاتا.گەرچە كودىڭىز توغرا تەرجىمە بولۇنسىمۇ،يۈرۈش جەريانىدا خاتالىق كۆرۈلدى.سەۋەبى بەلكىم تۆۋەندىكىچە:قائىدىگە ئىخلاپ ساقلىغۇچ زىيارىتى ياكى ئىندىكىس،چەكلەنگەن فۇنكىسىيەنى ئىشلىتىش،پويىنتېر ئۇچۇپ يۈرۈش
كودىڭىز تەرجىمىدە مەغلۇپ بولدى.كودىڭىزدا ئېغىر دەرجىدە تىل خاتالىق بار،بۇيەرنى چىكىپ تەپسىلاتىنى كۆرۈڭ:Compile Error
| 17.12.01 |