this class is basic so we dont know a whole lot any help would be great A positi
ID: 3541900 • Letter: T
Question
this class is basic so we dont know a whole lot any help would be great
A positive integer is said to be square-free if none of its factors (greater than 1) are themselves squares.
For example, the positive integer 30 has factors 1, 2, 3, 5, 6, 10, 15, and 30. None of these factors
(greater than 1) are themselves squares, and so 30 is square-free.
For another example, the positive integer 36 has factors 1, 2, 3, 4, 9, 12, 18, and 36. Notice that 3 of
these factors (greater than 1) are themselves squares: 4 (since 4 is 2 * 2), 9 (since 9 is 3 * 3), and 36
(since 36 is 6 * 6). Therefore, 36 is not square-free.
An ordered pair of positive integers can be classified in one of four ways:
? If both of the integers in the pair are square-free, then this pair is SWEET.
? If the first integer in the pair is square-free but the second one is not, then this pair is SOUR.
? If the second integer in the pair is square-free but the first one is not, then this pair is SALTY.
? If neither of the integers in the pair are square-fee, then this pair is BITTER.
Write, compile, execute, and test a C++ program that asks the user to input an ordered pair of integers,
each between 2 and 5000. Then, for each integer of the pair, it should display that integer's factors
(greater than 1) that are themselves squares, and also display whether or not that integer is square-free.
Finally, it should display whether this ordered pair of integers is SWEET, SOUR, SALTY, or BITTER.
If you haven
Explanation / Answer
#include<iostream>
#include<cmath>
using namespace std;
int main()
{
int i,firstNumber, secondNumber, temp, count1 =0, count2 = 0;
cout<<"Enter the first number of the pair: " <<endl;
cin>>firstNumber;
cout<<"Enter the second number of the pair: "<<endl;
cin>>secondNumber;
cout << "Integer factors of "<<firstNumber <<" which are themselves squares are :"<<endl;
for(i=2;i<=firstNumber;i++)
{
if(firstNumber%i==0)
{
temp = sqrt(i);
if(temp*temp == i) {
cout<<i<<" ";
count1++;
}
}
}
if (count1 == 0){
cout << "None" << endl;
}
cout << endl;
cout << "Integer factors of "<< secondNumber << " which are themselves squares are :"<<endl;
for(i=2;i<=secondNumber;i++)
{
if(secondNumber%i==0)
{
temp = sqrt(i);
if(temp*temp == i) {
cout<<i<<" ";
count2++;
}
}
}
if (count2 == 0){
cout << "None" << endl;
}
if (count1 == 0 && count2 ==0){
cout << "this pair is SWEET."<<endl;
}
else if (count1 == 0 && count2 >0){
cout << "this pair is SOUR."<<endl;
}
else if (count1 >0 && count2 == 0){
cout << "this pair is SALTY."<<endl;
}
else if (count1 >0 && count2 >0){
cout << "this pair is BITTER."<<endl;
}
return 0;
}
Related Questions
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.