prints the Fibonacci Series up to N terms.
Step 1: Design (Default.aspx)
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="FibonacciWebApp.Default" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>Fibonacci Series Generator</title>
<style>
body {
font-family: Arial;
background-color: #f5f6fa;
text-align: center;
padding: 40px;
}
.container {
background-color: #fff;
border-radius: 10px;
padding: 30px;
width: 450px;
margin: auto;
box-shadow: 0px 0px 10px #ccc;
}
h2 { color: #1A2A80; }
input, button {
margin: 10px;
padding: 8px;
font-size: 16px;
}
.result {
color: green;
font-weight: bold;
word-wrap: break-word;
}
</style>
</head>
<body>
<form id="form1" runat="server">
<div class="container">
<h2>Fibonacci Series Generator</h2>
<asp:Label ID="Label1" runat="server" Text="Enter Number of Terms: "></asp:Label>
<asp:TextBox ID="txtTerms" runat="server"></asp:TextBox>
<br />
<asp:Button ID="btnGenerate" runat="server" Text="Generate Fibonacci Series" OnClick="btnGenerate_Click" />
<br /><br />
<asp:Label ID="lblResult" runat="server" CssClass="result"></asp:Label>
</div>
</form>
</body>
</html>
Step 2: Backend Logic (Default.aspx.cs)
using System;
using System.Text;
namespace FibonacciWebApp
{
public partial class Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected void btnGenerate_Click(object sender, EventArgs e)
{
try
{
int n = int.Parse(txtTerms.Text);
if (n <= 0)
{
lblResult.Text = " Please enter a positive integer greater than zero.";
return;
}
lblResult.Text = $"Fibonacci Series up to {n} terms:<br/>" + GenerateFibonacci(n);
}
catch (FormatException)
{
lblResult.Text = " Please enter a valid number.";
}
catch (Exception ex)
{
lblResult.Text = $"Error: {ex.Message}";
}
}
private string GenerateFibonacci(int n)
{
int first = 0, second = 1, next;
StringBuilder series = new StringBuilder();
series.Append(first + " ");
for (int i = 1; i < n; i++)
{
series.Append(second + " ");
next = first + second;
first = second;
second = next;
}
return series.ToString();
}
}
}
Real-Time Flow Explanation
The user enters how many Fibonacci terms they want (for example, 10).
On clicking Generate, the backend runs GenerateFibonacci() method.
The method uses a loop and StringBuilder to efficiently build the Fibonacci series string.
The output is displayed on the webpage dynamically.
Output Example
If user enters 8,
Fibonacci Series up to 8 terms:
0 1 1 2 3 5 8 13