bsc

Comprehensive codebase and cou...
Log | Files | Refs | README | LICENSE

commit b273b036854853c24587db079105fcf061d700bd
parent 5e2359d295ebf590ede57cd95ce7997cf79a5dd3
Author: Amit Dutta <amitdutta4255@gmail.com>
Date:   Sun, 23 Nov 2025 12:19:33 +0530

new -23112025 .\letusc\lucproblem014, short(14)

Diffstat:
Mdocs/index.html | 196++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-
Aletusc/lucproblem014-short.c | 62++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Aletusc/lucproblem014.c | 104+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
3 files changed, 361 insertions(+), 1 deletion(-)

diff --git a/docs/index.html b/docs/index.html @@ -892,7 +892,7 @@ int main() <div class="flex items-center"> <svg class="w-6 h-6 text-blue-500 mr-4 flex-shrink-0" fill="none" stroke="currentColor" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M3 7v10a2 2 0 002 2h14a2 2 0 002-2V9a2 2 0 00-2-2h-6l-2-2H5a2 2 0 00-2 2z"></path></svg> <span class="font-medium text-gray-800">letusc</span> - <span class="ml-2 text-sm text-gray-500">(62 files)</span> + <span class="ml-2 text-sm text-gray-500">(64 files)</span> </div> <div class="flex items-center space-x-4"> <a href="https://github.com/notamitgamer/bsc/tree/main/letusc" target="_blank" class="p-1 rounded-full text-gray-500 hover:bg-gray-200 hover:text-gray-800 transition-colors" onclick="event.stopPropagation()" title="View folder on GitHub"> @@ -4243,6 +4243,200 @@ int main() }</code></pre> </div> </li> + + <li> + <div class="flex items-center p-3 pl-8 hover:bg-gray-50 transition-colors duration-200"> + <svg class="w-6 h-6 text-green-500 mr-4 flex-shrink-0" fill="none" stroke="currentColor" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M7 21h10a2 2 0 002-2V9.414a1 1 0 00-.293-.707l-5.414-5.414A1 1 0 0012.586 3H7a2 2 0 00-2 2v14a2 2 0 002 2z"></path></svg> + <span class="text-gray-700">lucproblem014-short.c</span> + <div class="ml-auto flex items-center space-x-4"> + <a href="https://github.com/notamitgamer/bsc/blob/main/letusc/lucproblem014-short.c" target="_blank" class="p-1 rounded-full text-gray-500 hover:bg-gray-200 hover:text-gray-800 transition-colors" title="View file on GitHub"> + <svg class="w-6 h-6" fill="currentColor" viewBox="0 0 24 24" aria-hidden="true"><path fill-rule="evenodd" d="M12 2C6.477 2 2 6.477 2 12c0 4.418 2.865 8.168 6.839 9.492.5.092.682-.217.682-.482 0-.237-.009-.868-.014-1.703-2.782.605-3.369-1.343-3.369-1.343-.454-1.158-1.11-1.466-1.11-1.466-.908-.62.069-.608.069-.608 1.003.07 1.531 1.032 1.531 1.032.892 1.53 2.341 1.088 2.91.832.092-.647.35-1.088.636-1.338-2.22-.253-4.555-1.113-4.555-4.951 0-1.093.39-1.988 1.031-2.688-.103-.253-.446-1.272.098-2.65 0 0 .84-.27 2.75 1.026A9.564 9.564 0 0112 6.844c.85.004 1.705.115 2.504.337 1.909-1.296 2.747-1.027 2.747-1.027.546 1.379.203 2.398.1 2.651.64.7 1.03 1.595 1.03 2.688 0 3.848-2.338 4.695-4.566 4.942.359.308.678.92.678 1.855 0 1.338-.012 2.419-.012 2.747 0 .268.18.58.688.482A10.001 10.001 0 0022 12c0-5.523-4.477-10-10-10z" clip-rule="evenodd"></path></svg> + </a> + <button onclick="showCode('code-letusc-lucproblem014-short_c', 'lucproblem014-short.c')" class="text-green-600 font-semibold text-sm hover:underline">View Code</button> + </div> + </div> + <div id="code-letusc-lucproblem014-short_c" class="hidden" data-github-url="https://github.com/notamitgamer/bsc/blob/main/letusc/lucproblem014-short.c"> + <pre><code class="language-c">/* Write a function that receives integers and returns the sum, average +and standard deviation of these numbers. Call this function from main() +and print the result in main() */ +/* Author - Amit Dutta, Date - 23th November, 2025 */ +/* Let Us C, Chap - 9, Page 159, Problem 9.1 */ + +#include &lt;stdio.h&gt; +#include &lt;math.h&gt; + +void stats(double *, double *, double *); + +int main() +{ + double sum, average, standardDeviation; + stats(&amp;sum, &amp;average, &amp;standardDeviation); + + printf(&quot;\n--- Stats ---&quot; + &quot;\nSum: %g&quot; + &quot;\nAverage: %g&quot; + &quot;\nStandard Deviation: %g&quot;, + sum, average, standardDeviation); + return 0; +} + +void stats(double *sum, double *average, double *standardDeviation) +{ + int n; + printf(&quot;How many numbers you want to give input: &quot;); + scanf(&quot;%d&quot;, &amp;n); + + double inputNumber[n]; + int i; + + printf(&quot;\n--- Enter Numbers ---\n&quot;); + for (i = 0; i &lt; n; i++) + { + printf(&quot;Enter number %d: &quot;, i + 1); + scanf(&quot;%lf&quot;, &amp;inputNumber[i]); + } + + double tempSum = 0; + for (i = 0; i &lt; n; i++) + tempSum += inputNumber[i]; + + double tempAverage = tempSum / n; + + double tempStandardDeviation = 0.0; + + if (n &gt; 1) + { + double tempSumation = 0; + for (i = 0; i &lt; n; i++) + tempSumation += pow((inputNumber[i] - tempAverage), 2.0); + + tempStandardDeviation = sqrt(tempSumation / (n - 1)); + } + + *sum = tempSum; + *average = tempAverage; + *standardDeviation = tempStandardDeviation; +}</code></pre> + </div> + </li> + + <li> + <div class="flex items-center p-3 pl-8 hover:bg-gray-50 transition-colors duration-200"> + <svg class="w-6 h-6 text-green-500 mr-4 flex-shrink-0" fill="none" stroke="currentColor" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M7 21h10a2 2 0 002-2V9.414a1 1 0 00-.293-.707l-5.414-5.414A1 1 0 0012.586 3H7a2 2 0 00-2 2v14a2 2 0 002 2z"></path></svg> + <span class="text-gray-700">lucproblem014.c</span> + <div class="ml-auto flex items-center space-x-4"> + <a href="https://github.com/notamitgamer/bsc/blob/main/letusc/lucproblem014.c" target="_blank" class="p-1 rounded-full text-gray-500 hover:bg-gray-200 hover:text-gray-800 transition-colors" title="View file on GitHub"> + <svg class="w-6 h-6" fill="currentColor" viewBox="0 0 24 24" aria-hidden="true"><path fill-rule="evenodd" d="M12 2C6.477 2 2 6.477 2 12c0 4.418 2.865 8.168 6.839 9.492.5.092.682-.217.682-.482 0-.237-.009-.868-.014-1.703-2.782.605-3.369-1.343-3.369-1.343-.454-1.158-1.11-1.466-1.11-1.466-.908-.62.069-.608.069-.608 1.003.07 1.531 1.032 1.531 1.032.892 1.53 2.341 1.088 2.91.832.092-.647.35-1.088.636-1.338-2.22-.253-4.555-1.113-4.555-4.951 0-1.093.39-1.988 1.031-2.688-.103-.253-.446-1.272.098-2.65 0 0 .84-.27 2.75 1.026A9.564 9.564 0 0112 6.844c.85.004 1.705.115 2.504.337 1.909-1.296 2.747-1.027 2.747-1.027.546 1.379.203 2.398.1 2.651.64.7 1.03 1.595 1.03 2.688 0 3.848-2.338 4.695-4.566 4.942.359.308.678.92.678 1.855 0 1.338-.012 2.419-.012 2.747 0 .268.18.58.688.482A10.001 10.001 0 0022 12c0-5.523-4.477-10-10-10z" clip-rule="evenodd"></path></svg> + </a> + <button onclick="showCode('code-letusc-lucproblem014_c', 'lucproblem014.c')" class="text-green-600 font-semibold text-sm hover:underline">View Code</button> + </div> + </div> + <div id="code-letusc-lucproblem014_c" class="hidden" data-github-url="https://github.com/notamitgamer/bsc/blob/main/letusc/lucproblem014.c"> + <pre><code class="language-c">/* Write a function that receives integers and returns the sum, average +and standard deviation of these numbers. Call this function from main() +and print the result in main() */ +/* Author - Amit Dutta, Date - 23th November, 2025 */ +/* Let Us C, Chap - 9, Page 159, Problem 9.1 */ + +#include &lt;stdio.h&gt; +#include &lt;math.h&gt; + +// Function prototype: Using pointers for &#x27;call by reference&#x27; to return 3 values. +void stats(double *, double *, double *); + +int main() +{ + double sum, average, standardDeviation; + // Passing addresses of variables to receive results from the function. + stats(&amp;sum, &amp;average, &amp;standardDeviation); + + printf(&quot;\n--- Stats ---&quot; + &quot;\nSum: %g&quot; + &quot;\nAverage: %g&quot; + &quot;\nStandard Deviation: %g&quot;, + sum, average, standardDeviation); + return 0; +} + +// Function to calculate statistics on user-provided numbers. +void stats(double *sum, double *average, double *standardDeviation) +{ + int n; + // Input Validation Loop for N + do + { + printf(&quot;How many numbers you want to give input: &quot;); + + if (scanf(&quot;%d&quot;, &amp;n) == 1) + { + break; + } + else + { + printf(&quot;\nPlease enter a valid number.\n&quot;); + // Clearing input buffer to handle invalid input + while (getchar() != &#x27;\n&#x27; &amp;&amp; !feof(stdin)) + ; + } + } while (1); + + // Variable-Length Array (VLA) to store the input numbers. + double inputNumber[n]; + int i = 0; + + printf(&quot;\n--- Enter Numbers ---\n&quot;); + + // Input Loop for numbers + while (i &lt; n) + { + printf(&quot;Enter number %d: &quot;, i + 1); + + if (scanf(&quot;%lf&quot;, &amp;inputNumber[i]) == 1) + { + // Clearing input buffer after successful read + while (getchar() != &#x27;\n&#x27;) + ; + i++; + } + else + { + printf(&quot;Invalid input. Only integers are allowed. Please try again.\n&quot;); + // Clearing input buffer to handle invalid input + while (getchar() != &#x27;\n&#x27; &amp;&amp; !feof(stdin)) + ; + } + } + + // 1. Sum Calculation + double tempSum = 0; + for (i = 0; i &lt; n; i++) + tempSum += inputNumber[i]; + + // 2. Average (Mean) calculation + double tempAverage = tempSum / n; + + // 3. Standard Deviation (Sample SD formula used) + double tempStandardDeviation = 0.0; + + // Preventing division by zero if n is 1. SD is 0 for a single number. + if (n &gt; 1) + { + double tempSumation = 0; + // calculating the sum of squared differences from the mean + for (i = 0; i &lt; n; i++) + tempSumation += pow((inputNumber[i] - tempAverage), 2.0); + + // Calculating sample standard deviation + tempStandardDeviation = sqrt(tempSumation / (n - 1)); + } + + // Assigning final values back to the variables in main(). + *sum = tempSum; + *average = tempAverage; + *standardDeviation = tempStandardDeviation; +}</code></pre> + </div> + </li> </ul> </div> </li> diff --git a/letusc/lucproblem014-short.c b/letusc/lucproblem014-short.c @@ -0,0 +1,61 @@ +/* Write a function that receives integers and returns the sum, average +and standard deviation of these numbers. Call this function from main() +and print the result in main() */ +/* Author - Amit Dutta, Date - 23th November, 2025 */ +/* Let Us C, Chap - 9, Page 159, Problem 9.1 */ + +#include <stdio.h> +#include <math.h> + +void stats(double *, double *, double *); + +int main() +{ + double sum, average, standardDeviation; + stats(&sum, &average, &standardDeviation); + + printf("\n--- Stats ---" + "\nSum: %g" + "\nAverage: %g" + "\nStandard Deviation: %g", + sum, average, standardDeviation); + return 0; +} + +void stats(double *sum, double *average, double *standardDeviation) +{ + int n; + printf("How many numbers you want to give input: "); + scanf("%d", &n); + + double inputNumber[n]; + int i; + + printf("\n--- Enter Numbers ---\n"); + for (i = 0; i < n; i++) + { + printf("Enter number %d: ", i + 1); + scanf("%lf", &inputNumber[i]); + } + + double tempSum = 0; + for (i = 0; i < n; i++) + tempSum += inputNumber[i]; + + double tempAverage = tempSum / n; + + double tempStandardDeviation = 0.0; + + if (n > 1) + { + double tempSumation = 0; + for (i = 0; i < n; i++) + tempSumation += pow((inputNumber[i] - tempAverage), 2.0); + + tempStandardDeviation = sqrt(tempSumation / (n - 1)); + } + + *sum = tempSum; + *average = tempAverage; + *standardDeviation = tempStandardDeviation; +}+ \ No newline at end of file diff --git a/letusc/lucproblem014.c b/letusc/lucproblem014.c @@ -0,0 +1,103 @@ +/* Write a function that receives integers and returns the sum, average +and standard deviation of these numbers. Call this function from main() +and print the result in main() */ +/* Author - Amit Dutta, Date - 23th November, 2025 */ +/* Let Us C, Chap - 9, Page 159, Problem 9.1 */ + +#include <stdio.h> +#include <math.h> + +// Function prototype: Using pointers for 'call by reference' to return 3 values. +void stats(double *, double *, double *); + +int main() +{ + double sum, average, standardDeviation; + // Passing addresses of variables to receive results from the function. + stats(&sum, &average, &standardDeviation); + + printf("\n--- Stats ---" + "\nSum: %g" + "\nAverage: %g" + "\nStandard Deviation: %g", + sum, average, standardDeviation); + return 0; +} + +// Function to calculate statistics on user-provided numbers. +void stats(double *sum, double *average, double *standardDeviation) +{ + int n; + // Input Validation Loop for N + do + { + printf("How many numbers you want to give input: "); + + if (scanf("%d", &n) == 1) + { + break; + } + else + { + printf("\nPlease enter a valid number.\n"); + // Clearing input buffer to handle invalid input + while (getchar() != '\n' && !feof(stdin)) + ; + } + } while (1); + + // Variable-Length Array (VLA) to store the input numbers. + double inputNumber[n]; + int i = 0; + + printf("\n--- Enter Numbers ---\n"); + + // Input Loop for numbers + while (i < n) + { + printf("Enter number %d: ", i + 1); + + if (scanf("%lf", &inputNumber[i]) == 1) + { + // Clearing input buffer after successful read + while (getchar() != '\n') + ; + i++; + } + else + { + printf("Invalid input. Only integers are allowed. Please try again.\n"); + // Clearing input buffer to handle invalid input + while (getchar() != '\n' && !feof(stdin)) + ; + } + } + + // 1. Sum Calculation + double tempSum = 0; + for (i = 0; i < n; i++) + tempSum += inputNumber[i]; + + // 2. Average (Mean) calculation + double tempAverage = tempSum / n; + + // 3. Standard Deviation (Sample SD formula used) + double tempStandardDeviation = 0.0; + + // Preventing division by zero if n is 1. SD is 0 for a single number. + if (n > 1) + { + double tempSumation = 0; + // calculating the sum of squared differences from the mean + for (i = 0; i < n; i++) + tempSumation += pow((inputNumber[i] - tempAverage), 2.0); + + // Calculating sample standard deviation + tempStandardDeviation = sqrt(tempSumation / (n - 1)); + } + + // Assigning final values back to the variables in main(). + *sum = tempSum; + *average = tempAverage; + *standardDeviation = tempStandardDeviation; +}+ \ No newline at end of file
© notamitgamer • Site Built: 2026-07-21 13:58:23 UTC • git-mirror commit: 1037f62 [view raw info]
Originally created with stagit • modified by notamitgamer
Forked from github.com/notamitgamer/git-mirror