• Apr 15, 2025 •hasnaoui1
0 likes • 4 views
int main()
• Aug 31, 2020 •joshwrou
1 like • 3 views
#include <iostream> using namespace std; int main() { cout << "Hello World!\n"; // Prints out "Hello World" return 0; }
• Nov 18, 2022 •AustinLeath
1 like • 9 views
#include <iostream> using namespace std; int main() { int arr[5]; for(int i = 0; i < 5; i++) { arr[i] = i; } for(int i = 0; i < 5; i++) { cout << "Outputting array info at position " << i + 1 << ": " << arr[i] << endl; } for(int i=0;i<5;i++) { for(int j=i+1;j<5;j++) { if(arr[i]>arr[j]) { int temp=arr[i]; arr[i]=arr[j]; arr[j]=temp; } } } cout << endl; for(int i = 0; i < 5; i++) { cout << "Outputting sorted array info at position " << i + 1 << ": " << arr[i] << endl; } return 0; }
• Jun 30, 2023 •Iceman_71
1 like • 7 views
// Iterative C++ program to // implement Stein's Algorithm //#include <bits/stdc++.h> #include <bitset> using namespace std; // Function to implement // Stein's Algorithm int gcd(int a, int b) { /* GCD(0, b) == b; GCD(a, 0) == a, GCD(0, 0) == 0 */ if (a == 0) return b; if (b == 0) return a; /*Finding K, where K is the greatest power of 2 that divides both a and b. */ int k; for (k = 0; ((a | b) & 1) == 0; ++k) { a >>= 1; b >>= 1; } /* Dividing a by 2 until a becomes odd */ while ((a & 1) == 0) a >>= 1; /* From here on, 'a' is always odd. */ do { /* If b is even, remove all factor of 2 in b */ while ((b & 1) == 0) b >>= 1; /* Now a and b are both odd. Swap if necessary so a <= b, then set b = b - a (which is even).*/ if (a > b) swap(a, b); // Swap u and v. b = (b - a); } while (b != 0); /* restore common factors of 2 */ return a << k; } // Driver code int main() { int a = 12, b = 780; printf("Gcd of given numbers is %d\n", gcd(a, b)); return 0; }
#include <iostream> using namespace std; int main() { const int ROW_SIZE = 2; const int COLUMN_SIZE = 5; //establish all variables int matrix[ROW_SIZE][COLUMN_SIZE]; int minVal; for (int i = 0; i < ROW_SIZE; ++i) // for loop to ask user to enter data. { for (int h = 0; h < COLUMN_SIZE; ++h) { cout << "Enter data for row #" << i + 1 << " and column #" << h + 1 << ": "; cin >> matrix[i][h]; } } cout << "You entered: " << endl; for (int i = 0; i < ROW_SIZE; ++i) //for statements to output the array neatly { for (int h = 0; h < COLUMN_SIZE; ++h) { cout << matrix[i][h] << "\t"; } cout << endl; } cout << "Minimum for each row is: {"; for (int i = 0; i < ROW_SIZE; i++) //for statements to find the minimum in each row { minVal = matrix[i][0]; for (int h = 0; h < COLUMN_SIZE; h++) { if (matrix[i][h] < minVal) // if matrix[i][h] < minVal -> minVal = matrix[i][h]; { minVal = matrix[i][h]; } } cout << minVal << ", "; } cout << "}" << endl; cout << "Minimum for each column is: {"; for (int i = 0; i < COLUMN_SIZE; i++) //for statements to find the minimum in each column { minVal = matrix[0][i]; for (int h = 0; h < ROW_SIZE; h++) { if (matrix[h][i] < minVal) //replaces minVal with array index for that column that is lowest { minVal = matrix[h][i]; } } cout << minVal << ", "; } cout << "}" << endl; return 0; }
• Jul 16, 2024 •LeifMessinger
0 likes • 15 views
//===============Header File================== #include <iostream> #include <sstream> //stringbuf #include <utility> //exchange //Couple rules: //Characters given through the getter functions have to be removed from the buffer. //This is so that bufferEmpty() == buffer.in_avail() > 0 basically always. //skipWhitespace doesn't remove the text from the buffer, but it does return the number of characters. //nextWord will trim whitespace before the word //nextInt will trim non-numbers before the number //hasNextInt and hasNextWord will trim the whitespace. If you think you need it, you should get nextWhitespace before doing any of those. //Whitespace after a word or an int is left on the buffer. //nextWhitespace will (get and) remove whitespace until the end of the line, including the newline character, but stops before the next line. //nextWhitespace won't read the next line when called before the end of the line, and it won't prompt the user for the next line if interactive. //If nextWhitespace is called after reading the end of the line, then it will read a new line into the buffer, which will prompt the user. //It acts like nextLine, but if there's something non-whitespace on the current line it stops there. class Scanner { public: std::stringbuf buffer; std::istream& input; Scanner(std::istream& in = std::cin) : buffer(), input(in) {} //Buffer debugging bool fillBuffer(); bool bufferEmpty(); void printBufferEmpty(); std::string getBuffer(); size_t bufferLength(); void printBufferStats(); //Int bool hasNextInt(); int nextInt(); //Word bool hasNextWord(); std::string nextWord(); //Line bool hasNextLine(); //Whitespace size_t skipWhitespace(); //Prob should be private, but I don't believe in that private shit. bool hasNextWhitespace(); std::string nextWhitespace(); std::string nextWhitespaceAll(); std::string nextLine(); }; //===============Source File================== bool Scanner::fillBuffer() { //Returns if it had to get the next line from the input. const bool badInput = input.eof() || input.bad(); const bool shouldFillBuffer = bufferEmpty() && !badInput; if (shouldFillBuffer) { std::string line; if (std::getline(input, line)) { buffer.str(buffer.str() + line + "\n"); } } return shouldFillBuffer; } bool Scanner::bufferEmpty(){ return buffer.str() == ""; } void Scanner::printBufferEmpty(){ std::cout << "The buffer is " << (bufferEmpty()? "" : "not") << " empty." << std::endl; } std::string Scanner::getBuffer(){ return buffer.str(); } size_t Scanner::bufferLength(){ return buffer.str().length(); } void Scanner::printBufferStats(){ if(bufferEmpty()){ std::cout << "The buffer is \"\"" << std::endl; return; } std::cout << "The length of the buffer is " << bufferLength() << std::endl; if(buffer.sgetc() == '\r'){ std::cout << "The buffer is \\r\\n" << std::endl; }else if(buffer.sgetc() == '\n'){ std::cout << "The buffer is \\n" << std::endl; } } bool Scanner::hasNextInt() { return hasNextWord() && (std::isdigit(buffer.sgetc()) || buffer.sgetc() == '-'); } int Scanner::nextInt() { if (!hasNextInt()) { //Will fill the buffer if not filled. Will also trim whitespace. return 0; } std::string num; size_t charactersRead = 0; while (buffer.in_avail() > 0 && (std::isdigit(buffer.sgetc()) || buffer.sgetc() == '-')) { num += buffer.sbumpc(); ++charactersRead; } buffer.str(buffer.str().erase(0, charactersRead)); return std::stoi(num); } bool Scanner::hasNextWord() { nextWhitespaceAll(); return buffer.in_avail() > 0; } std::string Scanner::nextWord() { if (!hasNextWord()) { //Will fill the buffer if not filled. Will also trim whitespace. return ""; } std::string word; size_t charactersRead = 0; while (buffer.in_avail() > 0 && !std::isspace(buffer.sgetc())) { word += buffer.sbumpc(); ++charactersRead; } buffer.str(buffer.str().erase(0, charactersRead)); return word; } bool Scanner::hasNextLine() { return (!bufferEmpty()) || fillBuffer(); } size_t Scanner::skipWhitespace() { //Returns characters read size_t charactersRead = 0; while (buffer.in_avail() > 0 && std::isspace(buffer.sgetc())) { buffer.sbumpc(); ++charactersRead; } return charactersRead; } bool Scanner::hasNextWhitespace(){ fillBuffer(); return buffer.in_avail() > 0 && std::isspace(buffer.sgetc()); } std::string Scanner::nextWhitespace() { if (!hasNextWhitespace()) { //Will fill the buffer if not filled return ""; } const size_t charactersRead = skipWhitespace(); std::string whitespace = buffer.str().substr(charactersRead); buffer.str(buffer.str().erase(0, charactersRead)); return whitespace; } std::string Scanner::nextWhitespaceAll(){ std::string whitespace; while(hasNextWhitespace()){ std::string gottenWhiteSpace = nextWhitespace(); whitespace += gottenWhiteSpace; } return whitespace; } std::string Scanner::nextLine(){ if (!hasNextLine()) { return ""; } fillBuffer(); //Swap out the old buffer with an empty buffer, and get the old buffer as a variable. std::string line = std::exchange(buffer, std::stringbuf()).str(); //Remove the newline. if(line[line.length() - 1] == '\n' || line[line.length() - 1] == '\r' ) line.pop_back(); if(line[line.length() - 1] == '\r' || line[line.length() - 1] == '\n' ) line.pop_back(); return line; } //=================Word and Int test================= while(bruh.hasNextInt() || bruh.hasNextWord()){ std::cout << "started loop" << std::endl; if(bruh.hasNextInt()){ std::cout << "Int: " << bruh.nextInt() << " " << std::endl; }else{ std::cout << "Word: " << bruh.nextWord() << " " << std::endl; } bruh.nextWhitespace(); } //===================Line test====================== for(int count = 1; bruh.hasNextLine(); ++count){ std::string line = bruh.nextLine(); std::cout << "Line " << count << ": " << line << std::endl; }