- एक्ज़िक्यूटर्स
-
सीखें
Python सीखें चलने योग्य उदाहरण, NumPy, pandas और बहुत कुछ AI सीखेंन्यूरल नेटवर्क, ML और LLM शुरू से C और C++ सीखें पॉइंटर, मेमोरी, STL और आधुनिक C++ C# सीखेंC# मूल बातें, OOP, LINQ, async और .NET अभ्यास Python एल्गोरिदम खोज, सॉर्टिंग, रिकर्शन और विज़ुअलाइज़र O(n) C और C++ एल्गोरिदम C और C++ कार्यान्वयन की तुलना करें
- चैलेंजनया
The builder pattern एक जटिल object को step by step बनाता है और अंत में final result देता है, ताकि callers parts को किसी भी order में set कर सकें.
Each part is a keyword, a space, and its text:
select <columns>: comma-separated column names (spaces around commas may vary). Optional; the default is*.from <table>: required.where <condition>,order <columns>,limit <n>: optional.
If a keyword appears more than once, the last one wins. Query को इस fixed order में, single spaces के साथ बनाएं:
SELECT <columns> FROM <table>[ WHERE <condition>][ ORDER BY <columns>][ LIMIT <n>]
In the SELECT list, प्रत्येक column को trim करें और उन्हें , के साथ join करें. All other texts are copied unchanged.
Implement query_builder(parts).
Input
parts: The parts, in any order.
Output
Return the SQL query string.
सीमाएँ
1 ≤ हिस्सों की संख्या ≤ 20
कम से कम एक from हिस्सा; हर हिस्से में अधिकतम 100 कैरेक्टर
उदाहरण
उदाहरण 1
इनपुट:
parts = ["where age \u003e 18", "from users", "select name,age"]
अपेक्षित आउटपुट:
"SELECT name, age FROM users WHERE age \u003e 18"
व्याख्या
Parts out of order आती हैं, लेकिन query हमेशा इस तरह बनती है SELECT … FROM … WHERE …: "SELECT name, age FROM users WHERE age > 18".
उदाहरण 2
इनपुट:
parts = ["from orders", "limit 10", "order total DESC"]
अपेक्षित आउटपुट:
"SELECT * FROM orders ORDER BY total DESC LIMIT 10"
व्याख्या
select हिस्सा न होने पर कॉलम डिफ़ॉल्ट रूप से * होते हैं: "SELECT * FROM orders ORDER BY total DESC LIMIT 10"।
संदर्भ
-
उदाहरण 1 नहीं चलाया गयाइनपुट:
parts = ["where age \u003e 18", "from users", "select name,age"]अपेक्षित आउटपुट:"SELECT name, age FROM users WHERE age \u003e 18"आपका आउटपुट -
उदाहरण 2 नहीं चलाया गयाइनपुट:
parts = ["from orders", "limit 10", "order total DESC"]अपेक्षित आउटपुट:"SELECT * FROM orders ORDER BY total DESC LIMIT 10"आपका आउटपुट
सबमिट करने पर 4 छुपे हुए टेस्ट भी चलेंगे।
ऑनलाइन C++ कंपाइलर और डीबगर
सर्वर मोड GDB में ब्रेकपॉइंट, वेरिएबल और स्टेप कंट्रोल के साथ C++ डीबग करें।
🚀 2,393,433 कुल निष्पादन (1,059 इस महीने)
कोडिंग चैलेंज के साथ C++ का अभ्यास करें
सीधे इस एडिटर में प्रैक्टिकल समस्याएँ हल करें: सैंपल टेस्ट चलाएँ, सबमिट करें, और AI कोड रिव्यू पाएं।
C/C++ सीखें और अभ्यास करें
चलने वाले पाठों वाला लर्निंग पाथ अपनाएँ, फिर कोडिंग चैलेंज से खुद को परखें।
💻 इस C++ ऑनलाइन एक्जीक्यूटर के बारे में
CodeUtility C++ Executor आपको ब्राउज़र में ही C++ कोड लिखने और चलाने देता है - कोई इंस्टॉलेशन या कंपाइलर सेटअप की जरूरत नहीं। यह एक सुरक्षित सैंडबॉक्स द्वारा संचालित है जो असली C++ मानकों C++11, C++14, C++17 से लेकर नवीनतम संस्करण तक सपोर्ट करता है।
यह टूल क्लाउड में चल रहे असली C++ कंपाइलर का उपयोग करके आपके कोड को कंपाइल और रन करता है, जिससे अलग-अलग संस्करणों में सटीक और एकसमान व्यवहार सुनिश्चित होता है। आप C++ की मूल अवधारणाओं जैसे variables, functions, loops, conditionals, और object-oriented programming के साथ बेझिझक प्रयोग कर सकते हैं।
चाहे आप इंटरव्यू की तैयारी कर रहे हों, आधुनिक C++ फीचर्स सीख रहे हों, या किसी एल्गोरिदम के लॉजिक को परखना चाहते हों, CodeUtility C++ Executor किसी भी डिवाइस से तुरंत कोड चलाने के लिए एक सरल लेकिन शक्तिशाली वातावरण प्रदान करता है।
सिर्फ़ एक कोड रनर से कहीं अधिक
एक ही एक्ज़ीक्यूटर में मल्टी-फ़ाइल एडिटर, अलग-थलग निष्पादन टर्मिनल, रनटाइम-विशिष्ट लाइब्रेरी, स्थायी वर्कस्पेस, साझाकरण और रीयल-टाइम सहयोग का उपयोग करें।
इस एक्ज़ीक्यूटर का उपयोग कैसे करें?
रनटाइम चुनें, फ़ाइल खोलें या बनाएँ, अपना कोड लिखें और चलाएँ चुनें। आउटपुट टर्मिनल में दिखाई देता है। साइन-इन उपयोगकर्ता वर्कस्पेस में फ़ाइलें रख सकते हैं, लाइब्रेरी इंस्टॉल कर सकते हैं और शेयर के माध्यम से सहयोग कर सकते हैं।
- एक संस्करण चुनें और वर्तमान फ़ाइल संपादित करें या वर्कस्पेस की दूसरी फ़ाइल खोलें।
- कोड चलाएँ, माँगे जाने पर टर्मिनल में इनपुट दें और सहेजा गया रन इतिहास देखें।
- जब कार्य के लिए एक से अधिक कोड अंश चाहिए, तो लाइब्रेरी, वर्कस्पेस टूल, शेयरिंग और चैट का उपयोग करें।
💡 C++ की बुनियादी बातें और उदाहरण जिन्हें आप ऊपर आज़मा सकते हैं
1. वेरिएबल्स और कॉन्स्टेंट्स घोषित करना
C++ में हर वेरिएबल का टाइप घोषित करना जरूरी है। ऐसे मान परिभाषित करने के लिए const का उपयोग करें जिन्हें initialization के बाद बदला नहीं जा सकता।
int age = 30;
double pi = 3.14159;
char grade = 'A';
std::string name = "Alice";
bool isActive = true;
// कॉन्स्टेंट्स
const int MAX_USERS = 100;
const std::string COMPANY = "CodeUtility";
// const को बदलने की कोशिश करने पर compile-time त्रुटि होगी
// MAX_USERS = 200; // ❌ त्रुटि
2. शर्तें (if / switch)
ब्रांचिंग के लिए if, else if, else का उपयोग करें। कई मानों के लिए switch का उपयोग करें।
int x = 2;
if (x == 1) {
std::cout << "एक\n";
} else if (x == 2) {
std::cout << "दो\n";
} else {
std::cout << "अन्य\n";
}
// स्विच-केस
switch (x) {
case 1:
std::cout << "एक\n";
break;
case 2:
std::cout << "दो\n";
break;
default:
std::cout << "अन्य\n";
}
3. लूप्स
for, while, और do-while का उपयोग कोड ब्लॉक को दोहराने के लिए करें।
for (int i = 0; i < 3; i++) {
std::cout << i << "\n";
}
int n = 3;
while (n > 0) {
std::cout << n << "\n";
n--;
}
4. ऐरे
ऐरे एक ही प्रकार के कई एलिमेंट्स स्टोर करते हैं।
int numbers[3] = {10, 20, 30};
std::cout << numbers[1] << "\n";
5. ऐरे/वेक्टर मैनिपुलेशन
डायनेमिक ऐरे के लिए std::vector का उपयोग करें।
#include <vector>
std::vector nums = {1, 2, 3};
nums.push_back(4);
nums.pop_back();
for (int n : nums) {
std::cout << n << " ";
}
6. कंसोल इनपुट/आउटपुट
इनपुट के लिए std::cin और आउटपुट के लिए std::cout का उपयोग करें।
std::string name;
std::cout << "अपना नाम दर्ज करें: ";
std::cin >> name;
std::cout << "नमस्ते, " << name << "\n";
7. फ़ंक्शन्स
फ़ंक्शन्स पुन: प्रयोज्य लॉजिक को समूहित करते हैं। पैरामीटर्स और रिटर्न टाइप्स का उपयोग करें।
int add(int a, int b) {
return a + b;
}
std::cout << add(3, 4);
8. मैप्स
std::map डिक्शनरी की तरह कुंजी-मूल्य जोड़े स्टोर करता है।
#include <map>
std::map ages;
ages["Alice"] = 30;
std::cout << ages["Alice"];
9. एक्सेप्शन हैंडलिंग
रनटाइम त्रुटियों को संभालने के लिए try और catch का उपयोग करें।
try {
throw std::runtime_error("त्रुटि हुई");
} catch (const std::exception& e) {
std::cout << e.what();
}
10. फ़ाइल I/O
फ़ाइलों से पढ़ने और लिखने के लिए fstream का उपयोग करें।
#include <fstream>
std::ofstream out("file.txt");
out << "नमस्ते फ़ाइल";
out.close();
std::ifstream in("file.txt");
std::string line;
getline(in, line);
std::cout << line;
in.close();
11. स्ट्रिंग मैनिपुलेशन
C++ स्ट्रिंग्स length(), substr(), और find() जैसी मेथड्स सपोर्ट करती हैं।
std::string text = "Hello World";
std::cout << text.length();
std::cout << text.substr(0, 5);
std::cout << text.find("World");
12. क्लासेस और ऑब्जेक्ट्स
C++ क्लासेस के माध्यम से ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग सपोर्ट करता है।
class Person {
public:
std::string name;
Person(std::string n) : name(n) {}
void greet() { std::cout << "नमस्ते, मैं " << name; }
};
Person p("Alice");
p.greet();
13. पॉइंटर्स
एक पॉइंटर किसी दूसरे वेरिएबल के मेमोरी ऐड्रेस को स्टोर करता है। ऐड्रेस पाने के लिए & का उपयोग करें,
और उस ऐड्रेस पर मौजूद मान तक पहुँचने के लिए * (डिरेफरेंस) करें।
int x = 10;
int* ptr = &x;
std::cout << "x का मान: " << x << "\n";
std::cout << "x का ऐड्रेस: " << ptr << "\n";
std::cout << "पॉइंटर से मान: " << *ptr << "\n";
// पॉइंटर के जरिए x को बदलें
*ptr = 20;
std::cout << "अपडेटेड x: " << x << "\n";
🐞 %{language} कोड ऑनलाइन डीबग कैसे करें
ऑनलाइन %{language} डीबगर से कंपाइलर या IDE इंस्टॉल किए बिना रनटाइम और लॉजिक त्रुटियाँ खोजें। सर्वर मोड debug symbols के साथ कंपाइल करता है और प्रोग्राम को GDB में चलाता है।
- लाइन नंबर के पास ब्रेकपॉइंट लगाएँ।
- कंपाइल करके पहले ब्रेकपॉइंट पर रुकने के लिए Debug चुनें।
- वर्तमान लाइन, call stack और वेरिएबल देखें।
- Continue, Step Over, Step Into या Step Out उपयोग करें।
- सत्र समाप्त करने के लिए Stop चुनें।
एक छोटे दोहराए जा सकने वाले उदाहरण से शुरू करें और अनपेक्षित व्यवहार से ठीक पहले ब्रेकपॉइंट लगाएँ।