わかるかたいたらどのような数式を使うのか教えてください。** 次の数列でn番目の数を算出する関数sum7()を作成しなさい。 ただし、引数nが1~20以外の場合、または、引数n1,n2が1~9以外の場合、算出結果は0とし、失敗:0を返す。 また、メイン関数は記述しないこと。 <数列> n1,n2,n3,n4・・・ 前の2つの値を加算すると次の値となる数列です。 3番目の数:n3 ・・・ 1番目の数:n1と2番目の数:n2を加算した結果 5番目の数:n5 ・・・ 3番目の数:n3と4番目の数:n4を加算した結果 <関数仕様> 定義:int sum7 (int n1, int n2, int n,unsigned int *result); 第一引数:n1の数 第二引数:n2の数 第三引数:整数 第四引数:算出結果 戻り値:成功 0以外 失敗0 <ファイル名> Cソースコード:sum7.c ヘッダファイル:sum7.h <実行例> n1 = 2, n2 = 3, n = 5 の場合、算出結果は13 n1 = 1, n2 = 9, n = 10 の場合、算出結果は327 途中まで作成したコードです "main.c" #include "sum7.h" int main(void) { int count1; //n1 int count2; //n2 int num=5; //整数 unsigned int sum=0; //算出結果 for (count1 = 1, count2 = 1; count1<10,count2 < 10; count1++, count2++) { sum=sum7(count1, count2, num, &sum); } printf("%d\n", sum); return 0; } "sum7.c" #include "sum7.h" int sum7(int n1, int n2, int n, unsigned int* result) { if (20 < n || 9 < n1 || 9 < n2) { printf("error\n"); return 0; } else { return *result = (n1 - 1) + (n2 - 2); } } "sum7.h" #pragma once #ifndef SUM7 #include <stdio.h> int sum7(int n1, int n2, int n, unsigned int* result); #endif // !SUM7 実行結果が15です。
この質問の投稿者はすでに退会しているため、質問者からの返信がない点にご留意ください。
回答5件
この質問の投稿者はすでに退会しているため、質問者からの返信やベストアンサーの選定がない点にご留意ください。
あなたの回答
tips
プレビュー