+ 1

Help me solve this to get output like this for m=7 n=14 for m=700 n=707 and.... n%3==2 , n/7=prime number

https://code.sololearn.com/cwq2et04zNUe/?ref=app

15th Nov 2020, 10:09 PM
Ali .N
Ali .N - avatar
18 odpowiedzi
+ 3
There are a few issues with your code: 1. The for loop would stop at the first number bigger than 'm' that would not satisfy the condition n % 3 == 2. 2. You never reset 'x', so if one divisor is found, the condition x == 0 can never be true in the future. 3. You return the value of 'n' instead of printing it, resulting in no output even in case a number should be found. Here is a corrected version of the code with some optimizations included by me: https://code.sololearn.com/cW8mqYISLMR7/?ref=app
15th Nov 2020, 10:51 PM
Shadow
Shadow - avatar
+ 3
Shadow do you have any idea about what this program is supposed to do? I mean, if you know wether the output has some mathematical value or is just the result of a problem made to practice.
15th Nov 2020, 11:12 PM
Davide
Davide - avatar
+ 3
Your example seems to be inaccurate. You can't factorize m = 16 into two prime numbers, so I think you meant n = ab, which would then be n = 2 * 13 = 26 for m = 16, not n = 2 * 16. Sure I could solve this, but how about you try it by yourself first? There are similarities to the first exercise, and if you studied my code, you should have an idea what you did wrong the first time when checking if a number is prime or not. You can always come back if you get stuck and I'll be happy to assist again, but I don't quite understand why I should do the entire exercise for you?
16th Nov 2020, 11:05 AM
Shadow
Shadow - avatar
+ 3
If you tried, you surely have written a code that could serve as a starting point? Here is a simple implementation: Loop over the numbers starting at 'm' and check if the condition n % 3 == 2 is true. If it is, loop over the possible factors of 'n', which are all integers in the interval [2, n/2]. If a number 'i' divides 'n', i.e. n % i == 0 is true, then you check if it is prime. If it is, check if the number n / i is also prime. If both are prime, you found your number, otherwise you start over with n + 1.
16th Nov 2020, 11:30 AM
Shadow
Shadow - avatar
+ 3
That's somewhat stupid, but nonetheless shouldn't be a problem, should it?
16th Nov 2020, 11:51 AM
Shadow
Shadow - avatar
+ 2
Davide Well, what it does is that it calculates the next natural integer 'n' bigger than (or equal to, that is not quite clear from the examples) 'm', for which division by 3 yields a quotient of 2 and the quotient of division by 7 is a prime number. I'm sure you could formalize this in a neat way and all, but if the resulting mapping has any staggering importance or interesting properties, I don't know it, if that is what you are asking. I'd deem it a practice problem, but I guess it also depends on where you draw the line between mathematical value and no mathematical value.
15th Nov 2020, 11:36 PM
Shadow
Shadow - avatar
+ 2
I still fail to see why, but here is one possible implementation: https://code.sololearn.com/c4jnu91ZKhHJ/?ref=app
16th Nov 2020, 1:55 PM
Shadow
Shadow - avatar
+ 2
What do you mean, without function? There is no function being defined throughout the program.
16th Nov 2020, 2:54 PM
Shadow
Shadow - avatar
+ 2
Sure, it doesn't matter in what base you write integer literals, as long as the values are the same. C supports binary (0b/0B), octary (0), decimal and hexadecimal (0x/0X) integer literals.
17th Nov 2020, 6:50 PM
Shadow
Shadow - avatar
+ 1
Yes you are right it depends on where you draw the line. My line is more or less between "it exists a Wikipedia's voice named after the sequence made with the possible outputs of this program" and "it doesn't" From your explanation I guess it's a practice problem. Thank you for answering!🤗🤗🤗 And nice job interpreting what the OP meant to ask 🤯
15th Nov 2020, 11:53 PM
Davide
Davide - avatar
+ 1
Shadow thank you. Is it possible that i do it without using function?
16th Nov 2020, 2:47 PM
Ali .N
Ali .N - avatar
+ 1
Why not?
17th Nov 2020, 6:44 PM
Shadow
Shadow - avatar
0
Shadow thank for solving.but if m=ab and a and b both are prime number and n>m , n%3=2 . What is the lowest n ? Example if m=16 n=26 n=2×16 Please solve this. Thank you🙏🙏🙏🙏
16th Nov 2020, 8:08 AM
Ali .N
Ali .N - avatar
0
Shadow n=ab is correct and You're right.ok i tried but cant solve that. So if you can please solve it
16th Nov 2020, 11:10 AM
Ali .N
Ali .N - avatar
0
Shadow the problem is i have to write than code without using function
16th Nov 2020, 11:48 AM
Ali .N
Ali .N - avatar
0
Shadow i dont know if you can do it write it please . Thanks anyway
16th Nov 2020, 11:53 AM
Ali .N
Ali .N - avatar
0
Shadow why numbers are in binary mode?
17th Nov 2020, 11:18 AM
Ali .N
Ali .N - avatar
0
Shadow Can change them to normal usual number?
17th Nov 2020, 6:46 PM
Ali .N
Ali .N - avatar