We use cookies to ensure you have the best browsing experience on our website. Please read our cookie policy for more information about how we use cookies.
#include<iostream>#include<stdexcept>usingnamespacestd;intlargest_proper_divisor(intn){if(n==0){throwinvalid_argument("largest proper divisor is not defined for n=0");}if(n==1){throwinvalid_argument("largest proper divisor is not defined for n=1");}for(inti=n/2;i>=1;--i){if(n%i==0){returni;}}return-1;// will never happen}voidprocess_input(int&n){try{intd=largest_proper_divisor(n);cout<<"result="<<d<<endl;}catch(conststd::invalid_argument&e){cout<<e.what()<<endl;}cout<<"returning control flow to caller"<<endl;}intmain(){intn;cin>>n;process_input(n);return0;}
Cookie support is required to access HackerRank
Seems like cookies are disabled on this browser, please enable them to open this website
Cpp exception handling
You are viewing a single comment's thread. Return to all comments →
Easy money.