Loading...
More C++ Posts
#include "goat.h" //include goat.hvoid Goat::setBreed(string breed) {this->breed = breed;}void Goat::setWeight(float weight) {this->weight = weight;}void Goat::setName(string name) {this->name = name;}void Goat::setGender(char gender) {this->gender = gender;}void Goat::setSpayed(bool goatIsSpayed) {this->goatIsSpayed = goatIsSpayed;}void Goat::setRegistrationID(string registrationID) {this->registrationID = registrationID;}void Goat::setColor(string color) {this->color = color;}void Goat::setOtherComments(string otherComments) {this->otherComments = otherComments;}string Goat::getBreed() {return breed;}float Goat::getWeight() {return weight;}string Goat::getName() {return name;}char Goat::getGender() {return gender;}bool Goat::getSpayed() {return goatIsSpayed;}string Goat::getRegistrationID() {return registrationID;}string Goat::getColor() {return color;}string Goat::getOtherComments() {return otherComments;}Goat::Goat() {breed = "";weight = 0.0;name = "";gender = '\0';goatIsSpayed = false;registrationID = "";color = "";otherComments = "";}Goat::Goat(string goatBreed, float goatWeight, string goatName, char goatGender, bool goatSpayedStatus, string goatRegistrationID, string goatColor, string goatOtherComments) {breed = goatBreed;weight = goatWeight;name = goatName;gender = goatGender;goatIsSpayed = goatSpayedStatus;registrationID = goatRegistrationID;color = goatColor;otherComments = goatOtherComments;}Goat::~Goat() {cout << "goat destroyed" << endl;}void Goat::printinfo() {cout << "Breed: " << breed << endl << "weight: " << weight << endl << "Name: " << name << endl << "Gender: " << gender << endl << "is Spayed: ";if(goatIsSpayed) { //here I do a logical test on boolean goatIsSpayed. if true cout << true else cout << falsecout << "True";} else {cout << "False";}cout << endl << "Registration ID: " << registrationID << endl << "Color Description: " << color << endl << "Other Comments: " << otherComments << endl << endl;}
// Iterative C++ program to// implement Stein's Algorithm//#include <bits/stdc++.h>#include <bitset>using namespace std;// Function to implement// Stein's Algorithmint 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 thegreatest power of 2that 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 codeint main(){int a = 12, b = 780;printf("Gcd of given numbers is %d\n", gcd(a, b));return 0;}
#include "stdio.h"#include <stdlib.h>int main (int argCount, char** args) {int a = atoi(args[1]);int b = atoi(args[2]);unsigned int sum = 0;unsigned int p = 1;for (unsigned int i = 1; i < b; i++) {p = p * i;}// (b!, (1 + b)!, (2 + b)!, ..., (n + b)!)for (unsigned int i = 0; i < a; i++) {p = p * (i + b);sum = sum + p;}printf("y: %u\n", sum);return 0;}
//Get data file at https://codecatch.net/post.php?postID=91e87d73//Iteration 1 of Wing Project. Solution breaks down around n=35#include <iostream>#include <fstream>#include <string>#include <vector>#include <map>using namespace std;int getSum(map<int, int> list);void readData(map<int, float>* data);void lowestPrice();void findSums(int n, vector<map<int, int>>* sumsList, map<int, float>* data);//void findSum(map<int, int> currList, int x, int n, vector<map<int, int>>* sumsList);void findSum(map<int, int> currList, int x, int n, vector<map<int, int>>* sumsList, map<int, float>* data);float getPrice(map<int, int> set, map<int, float>* data);template <typename S>ostream& operator<<(ostream& os, const vector<S>& vector){// Printing all the elements using <<for (auto element : vector) {os << element << " ";}return os;}bool operator==(map<int, int> m1, map<int, int> m2){if(m1.size() != m2.size())return false;bool ret = true;for(auto it = m1.begin(); it !=m1.end() && ret; it++){if(ret && m1.count(it->first) != m2.count(it->first))ret = false;if(ret && m1.count(it->first) == 1){if(m1.at(it->first) != m2.at(it->first))ret = false;}}return ret;}int main(){map<int, float> data;readData(&data);vector<map<int, int>> *sumsList;sumsList = new vector<map<int, int>>;findSums(40, sumsList, &data);for(auto el : *sumsList){for(auto it = el.begin(); it != el.end(); it++){cout << it->first << "->" << it->second << " ";}cout << getPrice(el, &data) << endl;}return 0;}/* Returns the price of wings given a set of numbers of wings to buy.* Returns -1 if the set contains a number that is not possible to buy.*/float getPrice(map<int, int> set, map<int, float>* data){float price = 0;for(auto it = set.begin(); it != set.end(); it++){//If data doesn't contain an element of set, return -1if(data->count(it->first) == 0)return -1;price += data->at(it->first) * it->second; //pricePerPacket * qtyOfPackets}return price;}/* Adds the elements of list.* Suppose mapping is <num, qty>.* Returns sum(num*qty)*/int getSum(map<int, int> list){int sum = 0;for(auto it = list.begin(); it != list.end(); it++)sum += it->first * it->second;return sum;}void findSums(int n, vector<map<int, int>>* sumsList, map<int, float>* data){map<int, int> currList;//Recur when currSum < nauto it = data->begin();while(it->first <= n && it != data->end()){findSum(currList, it->first, n, sumsList, data);it++;}}void findSum(map<int, int> currList, int x, int n, vector<map<int, int>>* sumsList, map<int, float>* data){//Append x to currListif(currList.count(x) == 0)currList.emplace(x, 1);else{int val = 1+ currList.at(x);currList.erase(x);currList.emplace(x, val);}//Determine current sum, check for return casesint currSum = getSum(currList);if(currSum > n)return;else if(currSum == n){//Check to make sure no duplicatesfor(auto list : *sumsList){if(list == currList)return;}sumsList->push_back(currList);return;}//Recur when currSum < nauto it = data->begin();while(it->first <= n-x && it != data->end()){findSum(currList, it->first, n, sumsList, data);it++;}}void readData(map<int, float>* data){ifstream file ("./data", ifstream::in);if(file.is_open()){int i = 0;while(!file.eof()){float wings, price;string skipnl;file >> wings;file >> price;data->emplace(wings, price);getline(file, skipnl);i++;}}}
//Leif Messinger//Compile with C++ 20#include <iostream>#include <ranges>#include <vector>#include <functional>#include <cctype> //toupper#include <cxxabi.h>template <typename T>void printType(){std::cout << abi::__cxa_demangle(typeid(T).name(), NULL, NULL, NULL) << std::endl;}template <typename T>class Slicer{public:T begin_;T end_;T trueEnd;Slicer(T begin, T end): begin_(begin), end_(begin), trueEnd(end){}template<typename U>Slicer(U&& vec) : begin_(vec.begin()), end_(vec.begin()), trueEnd(vec.end()){}Slicer& finish(){begin_ = end_;end_ = trueEnd;return (*this);}Slicer& to(long int index){begin_ = end_;if(index > 0){end_ = (begin_ + index);}else{index *= -1;end_ = (trueEnd - index);}return (*this);}Slicer& operator[](long int index){return to(index);}T begin(){return this->begin_;}T end(){return this->end_;}Slicer& operator()(std::function<void(decltype(*begin_))> func) {for(decltype(*begin_) thing : (*this)){func(thing);}return (*this);}};static_assert(std::ranges::range< Slicer<std::vector<int>::const_iterator> >);int main(){std::string vec = "abcdefghijklmnopqrstuvwxyz";Slicer<std::string::const_iterator> bruh(vec);//printType<decltype(bruh)>();bruh.to(3)([](char yeet){std::cout << yeet;}).to(-1)([](char yeet){std::cout << char(std::toupper(yeet));}).finish()([](char yeet){std::cout << yeet << yeet << yeet << yeet << yeet;});std::cout << std::endl << std::endl;int arr[] = {1, 2, 3, 4, 5, 6, 7, 8};Slicer<int*> arrSlicer(arr, arr + (sizeof(arr)/sizeof(int)));std::cout << "[";arrSlicer.to(-1)([](int yeet){std::cout << yeet << ", ";}).finish()([](int yeet){std::cout << yeet << "]" << std::endl;});return 0;}
#include <iostream>using namespace std;int main(){cout << "Hello, World!" << endl;return 0;}