Chào mọi người, em có vấn đề muốn hỏi:
Đề yêu cầu tính tổng của dãy số
Cho phép user nhập một chuỗi số bất kì và chỉ dừng khi người dùng nhập số 0 (số 0 không được tính vào sum)
Nếu là số chẵn thì bình phương số đó, xong cộng số đó vào sum
Nếu là số lẻ thì lập phương số đó, xong cộng số đó vào sum
Em viết ra được như đoạn code dưới nhưng khi test thì hình như logic của em sai:
vd Nhập vào 2 3 0 thì kết quả phải là sum = 22 + 33*3 = 31 nhưng khi test trong chương trình kết quả lại ra 27
Mọi người xem code với gợi ý cho em logic bài này với ạ
Em cám ơn
#include<stdio.h>
int main()
{
int number, squareNumber, cubeNumber;
int sum = 0;
printf("Enter number to cal sum:");
scanf("%d", &number);
while(number > 0) {
sum += number;
scanf("%d", &number);
if(number%2 == 0) {
//If the number is even, SQUARE that number before adding it to the Sum.
squareNumber = number*number;
}else{
//If the number is odd, CUBE that number before adding it to the Sum.
cubeNumber = number*number*number;
}
}
sum = squareNumber + cubeNumber;
printf("Sum of sequences = %d",sum);
return 0;
}
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?