Untitled

 avatar
unknown
plain_text
2 months ago
72 kB
6
Indexable
import { useState } from "react";

const revisionData = [
  {
    week: "Week 1",
    topic: "Introduction to Financial Management",
    mcqs: [
      {
        q: "Which of the following best describes the primary focus of finance compared to accounting?",
        options: ["A) Recording historical transactions", "B) Forward-looking management of cash flows and raising funds", "C) Preparing tax returns", "D) Auditing financial statements"],
        answer: "B"
      },
      {
        q: "The Time Value of Money (TVM) states that:",
        options: ["A) Money in the future is worth more than money today", "B) Money today is worth the same as money in the future", "C) Money today is worth more than the same amount in the future", "D) Inflation has no effect on money's value"],
        answer: "C"
      },
      {
        q: "Which of the following is NOT one of the three primary drivers of the Time Value of Money?",
        options: ["A) Inflation", "B) Risk", "C) Taxation", "D) Opportunity Cost"],
        answer: "C"
      },
      {
        q: "Compounding is best described as:",
        options: ["A) Finding the present value of a future sum", "B) Finding the future value of a sum invested today", "C) Calculating the cost of equity", "D) Measuring the risk of an investment"],
        answer: "B"
      },
      {
        q: "Discounting is the process of:",
        options: ["A) Adding interest to a present value", "B) Finding the future value of cash flows", "C) Finding the present value of future cash flows", "D) Calculating compound interest"],
        answer: "C"
      },
      {
        q: "£1,000 is invested for 4 years at 3% per annum. Using compounding, what is the approximate future value?",
        options: ["A) £1,120.00", "B) £1,125.51", "C) £1,130.00", "D) £1,060.00"],
        answer: "B"
      },
      {
        q: "In the context of investment risk, which statement is correct?",
        options: ["A) Risk-averse investors prefer higher risk for the same return", "B) Investors take on more risk only if compensated with higher potential return", "C) All investors are risk-neutral", "D) Risk has no relationship with expected return"],
        answer: "B"
      },
      {
        q: "Which of the following is an example of a return component for a shareholder?",
        options: ["A) Interest on a bank loan", "B) Capital gain from a share price increase", "C) Tax refund", "D) Supplier credit"],
        answer: "B"
      },
      {
        q: "Accounting is primarily concerned with:",
        options: ["A) Forecasting future cash flows", "B) Strategic investment decisions", "C) Stewardship and recording historical data", "D) Raising capital from investors"],
        answer: "C"
      },
      {
        q: "Which formula correctly represents compounding?",
        options: ["A) FV = PV ÷ (1 + r)ⁿ", "B) FV = PV × (1 + r)ⁿ", "C) FV = PV × r × n", "D) FV = PV − (1 + r)ⁿ"],
        answer: "B"
      },
      {
        q: "Which formula correctly represents discounting?",
        options: ["A) PV = FV × (1 + r)ⁿ", "B) PV = FV + (1 + r)ⁿ", "C) PV = FV ÷ (1 + r)ⁿ", "D) PV = FV − r × n"],
        answer: "C"
      },
      {
        q: "The opportunity cost in the context of TVM refers to:",
        options: ["A) The cost of borrowing money", "B) Potential gains lost by holding money rather than investing it", "C) The rate of inflation", "D) The risk of not receiving future payments"],
        answer: "B"
      },
      {
        q: "This module (ACCF5003) provides a foundation for which future module?",
        options: ["A) Management Accounting", "B) Financial Risk Management", "C) Corporate Law", "D) Business Statistics"],
        answer: "B"
      },
      {
        q: "Which of the following best explains why a rational investor would prefer £1,000 today over £1,000 in one year?",
        options: ["A) Future money is always taxed more", "B) Inflation, risk, and opportunity cost make today's money more valuable", "C) Banks do not accept future cash", "D) There is no preference; they are equal"],
        answer: "B"
      },
      {
        q: "In finance, 'risk' is defined as:",
        options: ["A) The certainty of losing money", "B) The possibility that actual return differs from expected return", "C) The rate of return on a government bond", "D) The cost of raising debt capital"],
        answer: "B"
      }
    ],
    formulaQs: [
      {
        q: "You invest £2,500 today at an annual interest rate of 5% for 6 years. Calculate the Future Value.",
        formula: "FV = PV × (1 + r)ⁿ"
      },
      {
        q: "You need £10,000 in 8 years. The interest rate is 4% per annum. How much must you invest today? (Present Value)",
        formula: "PV = FV ÷ (1 + r)ⁿ"
      },
      {
        q: "An investment doubles over 10 years. Starting with £5,000, calculate the future value using compound interest at 7% per annum.",
        formula: "FV = PV × (1 + r)ⁿ"
      },
      {
        q: "A project promises to pay £15,000 in 5 years. If the discount rate is 6%, what is the present value of this cash flow?",
        formula: "PV = FV ÷ (1 + r)ⁿ"
      },
      {
        q: "An investor wants £50,000 in 10 years and can earn 3.5% per annum. How much should they invest today?",
        formula: "PV = FV ÷ (1 + r)ⁿ"
      },
      {
        q: "£800 is invested at 2% per annum compound interest. Calculate its value after 3 years.",
        formula: "FV = PV × (1 + r)ⁿ"
      },
      {
        q: "A company expects to receive £20,000 in 4 years. If the required rate of return is 8%, calculate the present value.",
        formula: "PV = FV ÷ (1 + r)ⁿ"
      }
    ]
  },
  {
    week: "Week 2",
    topic: "Financial Management Decisions & Short-Term Finance",
    mcqs: [
      {
        q: "What are the three core decision-making areas in financial management?",
        options: ["A) Budgeting, Auditing, Reporting", "B) Financing, Investment, Dividend", "C) Equity, Debt, Preference Shares", "D) Liquidity, Profitability, Solvency"],
        answer: "B"
      },
      {
        q: "The primary objective of corporate finance is to:",
        options: ["A) Maximise revenue", "B) Minimise costs", "C) Maximise shareholder wealth", "D) Maximise market share"],
        answer: "C"
      },
      {
        q: "Which of the following is an example of a dividend decision?",
        options: ["A) Choosing between equity and debt financing", "B) Deciding how much profit to retain versus distribute to shareholders", "C) Evaluating a new factory investment", "D) Managing the company's overdraft facility"],
        answer: "B"
      },
      {
        q: "Shareholders receive wealth through which two mechanisms?",
        options: ["A) Interest payments and tax refunds", "B) Dividends and capital gains", "C) Bank loans and overdrafts", "D) Trade credit and factoring"],
        answer: "B"
      },
      {
        q: "Which statement correctly describes the interdependency of financial decisions?",
        options: ["A) Financing, investment, and dividend decisions are made completely independently", "B) Only financing and investment decisions are related", "C) A choice in one decision area directly affects the others", "D) Dividend decisions have no effect on financing decisions"],
        answer: "C"
      },
      {
        q: "What does ESG stand for in the context of corporate objectives?",
        options: ["A) Earnings, Shares, Growth", "B) Environmental, Social, and Governance", "C) Equity, Solvency, Growth", "D) Earnings, Stability, Governance"],
        answer: "B"
      },
      {
        q: "A bank overdraft is best described as:",
        options: ["A) A long-term fixed loan", "B) A flexible, bank-agreed credit limit for daily needs", "C) A permanent source of equity finance", "D) A government grant for businesses"],
        answer: "B"
      },
      {
        q: "Trade credit as a source of short-term finance involves:",
        options: ["A) Borrowing money from a bank short-term", "B) Delayed payments to suppliers for goods already received", "C) Issuing bonds in the financial market", "D) Selling shares to raise immediate cash"],
        answer: "B"
      },
      {
        q: "Which of the following is the most common measure of shareholder wealth?",
        options: ["A) Earnings per share", "B) Net profit margin", "C) The ordinary share price", "D) Return on assets"],
        answer: "C"
      },
      {
        q: "An investment decision involves:",
        options: ["A) Determining dividend payout ratios", "B) Choosing the most cost-effective source of capital", "C) Allocating the company's available funds into productive assets", "D) Managing trade payables"],
        answer: "C"
      },
      {
        q: "Which of the following best represents a financing decision?",
        options: ["A) Whether to buy new machinery", "B) How much dividend to pay shareholders", "C) Whether to raise capital via equity or debt", "D) How to manage inventory levels"],
        answer: "C"
      },
      {
        q: "Why is the share price described as a 'surrogate objective' for shareholder wealth?",
        options: ["A) It is set by the government", "B) It incorporates all information about the company's prospects and expected returns", "C) It only reflects past profits", "D) It is determined solely by dividends paid"],
        answer: "B"
      },
      {
        q: "Short-term finance is primarily used to manage:",
        options: ["A) Long-term capital investments", "B) The working capital cycle of a business", "C) Merger and acquisition activity", "D) Pension fund obligations"],
        answer: "B"
      },
      {
        q: "If a company has many profitable projects available, it is likely to:",
        options: ["A) Pay very high dividends", "B) Retain more earnings to fund future investment", "C) Issue more debt immediately", "D) Reduce its share capital"],
        answer: "B"
      },
      {
        q: "Which corporate objective relates to maintaining cash flows and manageable debt?",
        options: ["A) Growth", "B) ESG", "C) Profitability", "D) Stability"],
        answer: "D"
      }
    ],
    formulaQs: [
      {
        q: "A company earns a net profit of £500,000 and decides to retain 60% for reinvestment. Calculate the total dividend paid to shareholders.",
        formula: "Dividend = Net Profit × (1 − Retention Ratio)"
      },
      {
        q: "A company currently has 2,000,000 ordinary shares in issue. The share price is £4.50. Calculate the total market capitalisation (shareholder wealth).",
        formula: "Market Capitalisation = Share Price × Number of Shares"
      },
      {
        q: "A business takes out a short-term loan of £80,000 at an annual interest rate of 6% for 9 months. Calculate the interest payable.",
        formula: "Interest = Principal × Rate × (Time / 12)"
      },
      {
        q: "A supplier offers trade credit of 60 days on purchases of £120,000 per annum. Calculate the average trade payables balance outstanding at any point.",
        formula: "Trade Payables = (Annual Purchases / 365) × Credit Days"
      },
      {
        q: "A company has retained earnings of £300,000 and decides to pay out 40% as dividends. How much is reinvested in the business?",
        formula: "Retained Amount = Total Earnings × Retention Ratio"
      },
      {
        q: "A business takes an overdraft of £50,000 at 8% annual interest. Calculate the monthly interest cost.",
        formula: "Monthly Interest = Principal × (Annual Rate / 12)"
      },
      {
        q: "A company's share price increases from £2.00 to £2.80 over one year and pays a dividend of £0.15. Calculate the total return to a shareholder who owns 1,000 shares.",
        formula: "Total Return = Capital Gain + Dividend Income"
      }
    ]
  },
  {
    week: "Week 3",
    topic: "Working Capital Management (Part 1)",
    mcqs: [
      {
        q: "Working capital is calculated as:",
        options: ["A) Non-current assets minus long-term liabilities", "B) Current assets minus current liabilities", "C) Total assets minus total liabilities", "D) Cash minus overdraft"],
        answer: "B"
      },
      {
        q: "The Cash Conversion Cycle (CCC) formula is:",
        options: ["A) Inventory Days + Payables Days − Receivables Days", "B) Receivables Days − Inventory Days + Payables Days", "C) Inventory Days + Receivables Days − Payables Days", "D) Payables Days − Receivables Days − Inventory Days"],
        answer: "C"
      },
      {
        q: "An aggressive working capital investment policy aims to:",
        options: ["A) Hold large amounts of inventory to prevent stockouts", "B) Minimise current asset levels to reduce tied-up cash", "C) Use only long-term finance for all assets", "D) Maximise cash reserves at all times"],
        answer: "B"
      },
      {
        q: "A conservative working capital investment policy prioritises:",
        options: ["A) Profitability over liquidity", "B) High levels of current assets to reduce risk and ensure liquidity", "C) Minimising all forms of current assets", "D) Funding all assets with short-term debt"],
        answer: "B"
      },
      {
        q: "Fluctuating current assets refer to:",
        options: ["A) Non-current assets that change in value", "B) The minimum level of inventory always held by the business", "C) Additional current assets required during peak or seasonal periods", "D) Long-term investments in financial instruments"],
        answer: "C"
      },
      {
        q: "The matching principle in working capital financing states:",
        options: ["A) All assets should be funded with equity", "B) Short-term assets should be funded with long-term finance", "C) Permanent assets should be funded with long-term finance and fluctuating assets with short-term finance", "D) All liabilities should match in value to assets"],
        answer: "C"
      },
      {
        q: "An aggressive financing strategy uses short-term funds to finance some permanent assets. This is:",
        options: ["A) Safer because short-term rates are higher", "B) Riskier because the bank could demand repayment at any time", "C) The same as conservative financing", "D) Always more expensive than long-term debt"],
        answer: "B"
      },
      {
        q: "Which of the following would REDUCE the Cash Conversion Cycle?",
        options: ["A) Allowing customers longer credit periods", "B) Holding more inventory as a safety buffer", "C) Negotiating longer payment terms with suppliers", "D) Increasing work-in-progress time"],
        answer: "C"
      },
      {
        q: "Trade payables days being longer is generally:",
        options: ["A) Bad for liquidity", "B) Beneficial for liquidity as it delays cash outflow", "C) Irrelevant to working capital", "D) Always a sign of financial distress"],
        answer: "B"
      },
      {
        q: "Permanent current assets are best defined as:",
        options: ["A) Non-current assets required permanently", "B) The minimum level of current assets a firm must always maintain", "C) Fixed assets like buildings and machinery", "D) Cash reserves held permanently in a savings account"],
        answer: "B"
      },
      {
        q: "The dual objectives of working capital management are:",
        options: ["A) Growth and stability", "B) Profitability and liquidity", "C) Revenue and cost reduction", "D) Debt and equity management"],
        answer: "B"
      },
      {
        q: "Why does holding excess cash reduce profitability?",
        options: ["A) Cash earns negative interest", "B) Cash is subject to high taxation", "C) Cash could be invested in more productive assets but sits idle", "D) Excess cash increases borrowing costs"],
        answer: "C"
      },
      {
        q: "A company has 70 inventory days, 45 receivables days, and 30 payables days. What is the CCC?",
        options: ["A) 55 days", "B) 85 days", "C) 115 days", "D) 145 days"],
        answer: "B"
      },
      {
        q: "Which of the following is the core component of working capital?",
        options: ["A) Long-term debt and equity", "B) Inventory, trade receivables, and cash, offset by trade payables", "C) Property, plant, and equipment", "D) Share capital and retained earnings"],
        answer: "B"
      },
      {
        q: "Conservative financing of working capital is described as:",
        options: ["A) Cheaper but riskier", "B) Relying mainly on overdrafts", "C) Using long-term finance for all permanent and some fluctuating assets — safer but more expensive", "D) Matching asset maturity precisely with debt maturity"],
        answer: "C"
      }
    ],
    formulaQs: [
      {
        q: "A company has inventory days of 55, receivables days of 40, and payables days of 35. Calculate the Cash Conversion Cycle.",
        formula: "CCC = Inventory Days + Receivables Days − Payables Days"
      },
      {
        q: "A business has current assets of £450,000 and current liabilities of £280,000. Calculate the net working capital.",
        formula: "Net Working Capital = Current Assets − Current Liabilities"
      },
      {
        q: "A company has annual sales of £2,600,000 and trade receivables of £200,000. Calculate the trade receivables days.",
        formula: "Receivables Days = (Trade Receivables / Annual Sales) × 365"
      },
      {
        q: "A firm has annual cost of sales of £1,820,000 and holds average inventory of £280,000. Calculate inventory days.",
        formula: "Inventory Days = (Inventory / Cost of Sales) × 365"
      },
      {
        q: "A business has annual credit purchases of £960,000 and trade payables of £160,000. Calculate payables days.",
        formula: "Payables Days = (Trade Payables / Annual Credit Purchases) × 365"
      },
      {
        q: "A company has inventory days of 80, receivables days of 50, and wants a CCC of 90 days. What must its payables days be?",
        formula: "CCC = Inventory Days + Receivables Days − Payables Days → rearrange for Payables Days"
      },
      {
        q: "A firm wants to reduce its CCC from 100 days to 75 days by extending supplier payment terms. If inventory days = 60 and receivables days = 55, what payables days are needed?",
        formula: "CCC = Inventory Days + Receivables Days − Payables Days → rearrange for Payables Days"
      }
    ]
  },
  {
    week: "Week 4",
    topic: "Working Capital Requirements & Overtrading",
    mcqs: [
      {
        q: "The Working Capital Requirement Statement calculates:",
        options: ["A) Total non-current assets required", "B) The total cash investment needed in day-to-day operations", "C) A company's long-term debt position", "D) The fair value of a company's shares"],
        answer: "B"
      },
      {
        q: "Work-in-progress (WIP) is typically valued assuming:",
        options: ["A) 100% of all costs have been incurred", "B) 0% of materials and 100% of labour", "C) 100% of materials and 50% of labour/overheads", "D) 50% of materials and 0% of labour"],
        answer: "C"
      },
      {
        q: "Finished goods are valued at:",
        options: ["A) Selling price only", "B) Raw material cost only", "C) Total production cost (materials + labour + overheads)", "D) Market value less depreciation"],
        answer: "C"
      },
      {
        q: "Trade receivables in the working capital requirement are usually valued at:",
        options: ["A) Cost price", "B) Selling price (or cost depending on accounting policy)", "C) Half the selling price", "D) Raw material cost only"],
        answer: "B"
      },
      {
        q: "Trade payables in the working capital requirement calculation are:",
        options: ["A) Added to current assets", "B) Subtracted from current assets to reduce the total requirement", "C) Ignored as they are not cash movements", "D) Added to long-term liabilities"],
        answer: "B"
      },
      {
        q: "Overtrading occurs when:",
        options: ["A) A business makes too much profit", "B) A company expands sales too rapidly without sufficient capital to support growth", "C) A company holds too much cash", "D) A business reduces its workforce too quickly"],
        answer: "B"
      },
      {
        q: "Which of the following is a key symptom of overtrading?",
        options: ["A) Falling sales revenue", "B) Increasing cash reserves", "C) A rapidly increasing bank overdraft alongside rapid sales growth", "D) Rising gross profit margins"],
        answer: "C"
      },
      {
        q: "Why is overtrading described as a 'paradox'?",
        options: ["A) A profitable company can still go bankrupt due to running out of cash", "B) A loss-making company always has plenty of cash", "C) Growth always reduces the need for working capital", "D) High sales always guarantee solvency"],
        answer: "A"
      },
      {
        q: "Which of the following is NOT a remedy for overtrading?",
        options: ["A) Raising new equity capital", "B) Improving inventory efficiency", "C) Aggressively expanding credit sales", "D) Selling off non-core assets"],
        answer: "C"
      },
      {
        q: "What is the raw materials working capital calculation based on?",
        options: ["A) Annual sales revenue divided by the holding period", "B) Weekly material cost multiplied by lead time in weeks", "C) Total overheads divided by 52", "D) Labour cost per unit times production volume"],
        answer: "B"
      },
      {
        q: "Which ratio is most likely to deteriorate during overtrading?",
        options: ["A) Gross profit margin", "B) Current ratio (current assets / current liabilities)", "C) Return on equity", "D) Earnings per share"],
        answer: "B"
      },
      {
        q: "If a company plans to grow sales by 20%, what happens to working capital requirements?",
        options: ["A) They remain unchanged", "B) They decrease proportionally", "C) They increase proportionally", "D) They become negative"],
        answer: "C"
      },
      {
        q: "Which of the following best describes the impact of a longer customer credit period on working capital?",
        options: ["A) Reduces the working capital requirement", "B) Has no effect on working capital", "C) Increases the working capital requirement", "D) Improves the company's cash position immediately"],
        answer: "C"
      },
      {
        q: "Stretching trade payables (paying suppliers later) during overtrading:",
        options: ["A) Permanently solves the liquidity problem", "B) Saves cash temporarily but risks damaging supplier relationships", "C) Has no effect on working capital", "D) Is always the best solution"],
        answer: "B"
      },
      {
        q: "The working capital requirement formula is:",
        options: ["A) Payables − (Inventory + Receivables)", "B) (Raw Materials + WIP + Finished Goods + Receivables) − Payables", "C) Current Assets + Current Liabilities", "D) Non-current assets − Long-term debt"],
        answer: "B"
      }
    ],
    formulaQs: [
      {
        q: "A company uses £520,000 of raw materials annually with a 3-week lead time. Calculate the raw materials working capital requirement.",
        formula: "Raw Materials = (Annual Cost / 52) × Lead Time (weeks)"
      },
      {
        q: "A business has annual production costs of £780,000 (materials: £400,000, labour: £230,000, overheads: £150,000). The production cycle is 4 weeks. Calculate the WIP requirement (assume materials added at start, labour/overheads 50% complete).",
        formula: "WIP = (Materials/52 × weeks) + (50% × (Labour+Overheads)/52 × weeks)"
      },
      {
        q: "Finished goods are held for 5 weeks. Annual total production cost is £900,000. Calculate the finished goods working capital requirement.",
        formula: "Finished Goods = (Annual Total Cost / 52) × Storage Weeks"
      },
      {
        q: "Annual sales (at selling price) are £1,400,000. Customers take 6 weeks to pay. Calculate the trade receivables requirement.",
        formula: "Trade Receivables = (Annual Sales / 52) × Collection Period (weeks)"
      },
      {
        q: "Annual credit purchases are £600,000 and the company takes 8 weeks to pay suppliers. Calculate the trade payables balance.",
        formula: "Trade Payables = (Annual Purchases / 52) × Payment Period (weeks)"
      },
      {
        q: "Using the results of the previous four questions (raw materials £30,000, WIP £22,000, finished goods £86,538, receivables £161,538, payables £92,308), construct the working capital requirement statement and calculate the total.",
        formula: "Total WC Required = Raw Materials + WIP + Finished Goods + Receivables − Payables"
      },
      {
        q: "A company's sales grow by 25% from £800,000 to £1,000,000. Its current working capital requirement is £120,000. Estimate the new working capital requirement assuming it scales proportionally.",
        formula: "New WC = Current WC × (New Sales / Old Sales)"
      }
    ]
  },
  {
    week: "Week 5",
    topic: "Inventory, Cash & Trade Receivables Management",
    mcqs: [
      {
        q: "The Economic Order Quantity (EOQ) model minimises:",
        options: ["A) Total revenue", "B) Total annual inventory costs (holding + ordering)", "C) Total production costs", "D) Trade receivables balance"],
        answer: "B"
      },
      {
        q: "In the EOQ model, as order quantity increases, holding costs:",
        options: ["A) Decrease", "B) Stay the same", "C) Increase", "D) Become zero"],
        answer: "C"
      },
      {
        q: "The EOQ formula is:",
        options: ["A) Q = (2 × F × H) / S", "B) Q = √(2 × S × F / H)", "C) Q = S × F / 2H", "D) Q = √(S × H / 2F)"],
        answer: "B"
      },
      {
        q: "Just-In-Time (JIT) inventory management aims to:",
        options: ["A) Hold maximum levels of inventory", "B) Eliminate inventory entirely without consequences", "C) Minimise the time between delivery and use of inventory", "D) Use safety stock to prevent any stockouts"],
        answer: "C"
      },
      {
        q: "A key risk of the JIT system is:",
        options: ["A) Holding too much cash", "B) High storage costs", "C) Production stoppages if supply chain is disrupted", "D) Over-reliance on long-term debt"],
        answer: "C"
      },
      {
        q: "Which of the following is the 'transaction motive' for holding cash?",
        options: ["A) Keeping cash to exploit sudden investment opportunities", "B) Holding cash to meet day-to-day business payments", "C) Holding cash as a safety net for unexpected events", "D) Keeping cash in reserves to pay dividends"],
        answer: "B"
      },
      {
        q: "The 'precautionary motive' for holding cash refers to:",
        options: ["A) Day-to-day operational needs", "B) Capitalising on sudden investment opportunities", "C) Maintaining a safety net for unexpected expenses", "D) Funding long-term capital projects"],
        answer: "C"
      },
      {
        q: "Offering an early payment discount to trade receivables customers achieves:",
        options: ["A) Reduces sales revenue permanently", "B) Speeds up cash collection by incentivising early payment", "C) Increases the bad debt risk", "D) Extends the cash conversion cycle"],
        answer: "B"
      },
      {
        q: "Factoring involves:",
        options: ["A) Issuing bonds in the financial market", "B) Selling accounts receivable to a third party for immediate cash", "C) Buying raw materials on credit", "D) Investing surplus cash in government bonds"],
        answer: "B"
      },
      {
        q: "A factor typically advances what percentage of the invoice value immediately?",
        options: ["A) 100%", "B) 50%", "C) Up to 80%", "D) 25%"],
        answer: "C"
      },
      {
        q: "Which of the following is NOT a benefit of factoring?",
        options: ["A) Immediate cash injection", "B) Reduced administrative burden", "C) Guaranteed profit increase", "D) Faster access to cash from sales"],
        answer: "C"
      },
      {
        q: "Cash flow problems can arise from which of the following?",
        options: ["A) Stable sales and consistent margins", "B) Continuing losses, inflation, rapid growth, or seasonal factors", "C) Paying suppliers ahead of schedule", "D) Reducing inventory levels"],
        answer: "B"
      },
      {
        q: "Surplus cash should be invested in:",
        options: ["A) High-risk equity investments", "B) Long-term illiquid assets", "C) Low-risk, liquid short-term instruments with no risk of capital loss", "D) Cryptocurrency"],
        answer: "C"
      },
      {
        q: "The EOQ model assumes which of the following?",
        options: ["A) Demand fluctuates significantly over the year", "B) Ordering and holding costs change with volume", "C) Constant demand and constant ordering/holding costs", "D) All inventory is sold at a fixed price"],
        answer: "C"
      },
      {
        q: "An early payment discount is financially worthwhile for the business offering it when:",
        options: ["A) The cost of the discount exceeds the benefit of early cash", "B) The financial benefit of receiving cash earlier outweighs the cost of the discount", "C) The customer refuses to pay within the normal credit period", "D) The company has no short-term borrowing needs"],
        answer: "B"
      }
    ],
    formulaQs: [
      {
        q: "Annual demand (S) = 18,000 units. Ordering cost (F) = £45 per order. Holding cost (H) = £2 per unit per year. Calculate the Economic Order Quantity (EOQ).",
        formula: "EOQ = √(2 × S × F / H)"
      },
      {
        q: "Using the EOQ from the previous question, calculate the total annual ordering cost.",
        formula: "Annual Ordering Cost = (S / Q) × F"
      },
      {
        q: "Using the EOQ from question 1, calculate the total annual holding cost.",
        formula: "Annual Holding Cost = (Q / 2) × H"
      },
      {
        q: "A company offers a 2% early payment discount. Annual credit sales are £500,000. Customers currently take 60 days but would pay in 10 days with the discount. The cost of short-term borrowing is 8%. Evaluate whether the discount is financially worthwhile.",
        formula: "Benefit = Interest saved on reduced receivables; Cost = Discount × Sales accepting early payment. Compare benefit vs cost."
      },
      {
        q: "A factor advances 80% of invoices immediately. Annual credit sales are £600,000. The factor charges 1.5% service fee and 7% annual interest on advances. Calculate the total annual cost of factoring.",
        formula: "Service Fee = Annual Sales × 1.5%; Interest = (Annual Sales × 80%) × 7%"
      },
      {
        q: "A company has annual demand of 24,000 units, ordering cost of £60, and holding cost of £3 per unit per year. Calculate the EOQ and the number of orders placed per year.",
        formula: "EOQ = √(2 × S × F / H); Orders per year = S / EOQ"
      },
      {
        q: "A company's monthly cash budget shows receipts of £85,000 and payments of £92,000. Opening cash balance is £10,000. Calculate the closing cash balance and identify if there is a surplus or deficit.",
        formula: "Closing Balance = Opening Balance + Receipts − Payments"
      }
    ]
  },
  {
    week: "Week 8",
    topic: "Long-Term Debt Finance (Loans, Leasing & Bonds)",
    mcqs: [
      {
        q: "Which of the following is a key advantage of debt finance over equity?",
        options: ["A) Debt holders have voting rights", "B) Interest on debt is tax-deductible, creating a tax shield", "C) Debt does not need to be repaid", "D) Debt always carries a lower risk than equity for the company"],
        answer: "B"
      },
      {
        q: "In the event of company liquidation, which group is paid first?",
        options: ["A) Ordinary shareholders", "B) Preference shareholders", "C) Debt holders (creditors)", "D) Management"],
        answer: "C"
      },
      {
        q: "A fixed interest rate on a bank loan means:",
        options: ["A) The rate changes with market conditions", "B) The rate stays the same for the entire loan duration", "C) Interest is only paid at the end of the loan", "D) The company can choose when to pay interest"],
        answer: "B"
      },
      {
        q: "An operating lease differs from a finance lease because:",
        options: ["A) Operating leases are always longer than finance leases", "B) Operating leases transfer ownership to the lessee at the end", "C) Operating leases are typically short-term and the lessor maintains the asset", "D) Finance leases do not appear on the balance sheet"],
        answer: "C"
      },
      {
        q: "Under IFRS 16, finance leases are recognised on the balance sheet as:",
        options: ["A) Expense only in the income statement", "B) Right-of-use assets and corresponding liabilities", "C) Intangible assets", "D) Current liabilities only"],
        answer: "B"
      },
      {
        q: "The 'coupon rate' of a bond refers to:",
        options: ["A) The bond's market price", "B) The fixed annual interest rate paid to the bondholder", "C) The redemption value at maturity", "D) The bond's credit rating"],
        answer: "B"
      },
      {
        q: "A Deep Discount Bond is characterised by:",
        options: ["A) Being issued above par value with high interest payments", "B) Being issued significantly below face value with little or no annual interest", "C) Paying interest monthly rather than annually", "D) Being convertible into preference shares"],
        answer: "B"
      },
      {
        q: "A convertible bond offers a lower coupon rate than a standard bond because:",
        options: ["A) It has a higher default risk", "B) It provides the 'sweetener' of potential conversion into shares", "C) It is backed by government guarantee", "D) It pays dividends instead of interest"],
        answer: "B"
      },
      {
        q: "The conversion value of a convertible bond is calculated as:",
        options: ["A) Redemption value × coupon rate", "B) Current share price × conversion ratio", "C) Market price of bond × coupon rate", "D) Par value ÷ conversion ratio"],
        answer: "B"
      },
      {
        q: "If the conversion value of a bond exceeds its redemption value, an investor should:",
        options: ["A) Sell the bond immediately", "B) Request early redemption", "C) Convert the bond into shares", "D) Hold the bond until market rates change"],
        answer: "C"
      },
      {
        q: "Long-term bank loans are described as debt with a repayment period of:",
        options: ["A) Less than 3 months", "B) 3 to 6 months", "C) 6 to 12 months", "D) More than one year"],
        answer: "D"
      },
      {
        q: "A secured bank loan means:",
        options: ["A) The company has no obligation to repay", "B) The bank has a legal claim over specific company assets if the loan is not repaid", "C) The loan is guaranteed by the government", "D) The interest rate is fixed at zero"],
        answer: "B"
      },
      {
        q: "The conversion premium is calculated as:",
        options: ["A) Par value minus market price", "B) Market price of bond minus current conversion value", "C) Conversion value minus coupon rate", "D) Redemption value minus par value"],
        answer: "B"
      },
      {
        q: "Why might a company prefer a variable interest rate loan?",
        options: ["A) It provides certainty for budgeting", "B) To take advantage of potential falls in market interest rates", "C) Because fixed rates are always more expensive", "D) Variable rates are never higher than fixed rates"],
        answer: "B"
      },
      {
        q: "Which statement about bonds (debentures) is correct?",
        options: ["A) Bonds can only be purchased directly from the company", "B) Bonds are non-tradeable instruments", "C) Bonds allow companies to borrow directly from financial markets and can be traded between investors", "D) Bonds always convert into shares at maturity"],
        answer: "C"
      }
    ],
    formulaQs: [
      {
        q: "A convertible bond has a conversion ratio of 25 shares per £100 bond. The current share price is £3.80. Calculate the conversion value.",
        formula: "Conversion Value = Conversion Ratio × Current Share Price"
      },
      {
        q: "The market price of a convertible bond is £112.50 and the conversion value is £95.00. Calculate the conversion premium.",
        formula: "Conversion Premium = Market Price of Bond − Conversion Value"
      },
      {
        q: "A company issues a bond with a 6% coupon rate on a par value of £100. Annual interest payments are made. Calculate the annual coupon payment.",
        formula: "Annual Coupon = Par Value × Coupon Rate"
      },
      {
        q: "A bond has a conversion ratio of 30 shares per £100 bond. The share price is expected to grow at 4% per year from its current price of £3.00. Calculate the expected conversion value in 3 years.",
        formula: "Future Share Price = Current Price × (1 + g)ⁿ; Conversion Value = Future Price × Conversion Ratio"
      },
      {
        q: "A company takes a long-term loan of £500,000 at a fixed annual interest rate of 5.5%. Calculate the annual interest payment.",
        formula: "Annual Interest = Loan Amount × Interest Rate"
      },
      {
        q: "A company has a finance lease with annual payments of £24,000 for 5 years. Calculate the total lease liability at inception (undiscounted).",
        formula: "Total Lease Liability = Annual Payment × Number of Years"
      },
      {
        q: "A standard (straight) bond is priced at £102. The convertible version of the same bond is priced at £118. Calculate the rights premium (value of the conversion option).",
        formula: "Rights Premium = Market Price of Convertible − Market Price of Straight Bond"
      }
    ]
  },
  {
    week: "Week 9",
    topic: "The Valuation of Bonds",
    mcqs: [
      {
        q: "The 'fair value' of a bond is determined by:",
        options: ["A) Its historical cost", "B) The present value of all expected future cash flows discounted at the required rate of return", "C) The par value printed on the bond certificate", "D) The company's credit rating"],
        answer: "B"
      },
      {
        q: "If the market interest rate rises above a bond's coupon rate, the bond will trade at:",
        options: ["A) Par (£100)", "B) A premium (above £100)", "C) A discount (below £100)", "D) Zero value"],
        answer: "C"
      },
      {
        q: "If the market interest rate falls below a bond's coupon rate, the bond will trade at:",
        options: ["A) Par (£100)", "B) A premium (above £100)", "C) A discount (below £100)", "D) Exactly twice par value"],
        answer: "B"
      },
      {
        q: "An irredeemable bond's value is calculated using which formula?",
        options: ["A) P₀ = RV / (1 + Kd)ⁿ", "B) P₀ = I / Kd", "C) P₀ = I × (1 + Kd)ⁿ", "D) P₀ = I + Kd"],
        answer: "B"
      },
      {
        q: "A zero coupon bond:",
        options: ["A) Pays annual interest but no redemption value", "B) Pays no annual interest and returns par value at maturity", "C) Pays a variable coupon based on market rates", "D) Is automatically converted into shares at maturity"],
        answer: "B"
      },
      {
        q: "Which bond type is MOST sensitive to changes in market interest rates?",
        options: ["A) Short-term redeemable bonds", "B) Fixed coupon bonds with long maturity", "C) Zero coupon bonds", "D) Convertible bonds with high conversion value"],
        answer: "C"
      },
      {
        q: "The required rate of return (Kd) used in bond valuation represents:",
        options: ["A) The company's cost of equity", "B) The market interest rate for bonds with a similar risk profile", "C) The government's base interest rate only", "D) The bond's coupon rate"],
        answer: "B"
      },
      {
        q: "For a convertible bond at maturity, a rational investor will:",
        options: ["A) Always choose cash", "B) Always choose shares", "C) Choose whichever option (cash or shares) has the higher monetary value", "D) Hold the bond indefinitely"],
        answer: "C"
      },
      {
        q: "When valuing a redeemable bond, the two cash flow components are:",
        options: ["A) Dividends and share price", "B) Annual coupon payments and redemption value at maturity", "C) Interest and flotation costs", "D) Tax payments and operating cash flows"],
        answer: "B"
      },
      {
        q: "The relationship between bond prices and market interest rates is:",
        options: ["A) Direct — both move in the same direction", "B) Inverse — when rates rise, prices fall", "C) No relationship exists", "D) Bond prices always remain at par regardless of interest rates"],
        answer: "B"
      },
      {
        q: "If a bond's coupon rate equals the market rate, the bond trades at:",
        options: ["A) A discount", "B) A premium", "C) Par value (£100)", "D) Zero"],
        answer: "C"
      },
      {
        q: "A company may 'call' (repay) its bonds early when:",
        options: ["A) The share price falls", "B) Market interest rates rise significantly", "C) Market interest rates drop significantly, allowing cheaper refinancing", "D) The company runs out of inventory"],
        answer: "C"
      },
      {
        q: "Valuing a redeemable bond with a 5% coupon, 8% market rate and 4 years to maturity would result in:",
        options: ["A) A price above £100", "B) A price equal to £100", "C) A price below £100", "D) A negative value"],
        answer: "C"
      },
      {
        q: "Which of the following correctly describes a 'discount bond'?",
        options: ["A) A bond whose coupon rate exceeds the market rate", "B) A bond whose market price exceeds par value", "C) A bond whose coupon rate is lower than the market rate, causing it to trade below par", "D) A bond offered exclusively to retail investors at a reduced price"],
        answer: "C"
      },
      {
        q: "Fair value estimation is important when issuing new bonds because:",
        options: ["A) It determines the dividend policy", "B) Setting the coupon too low means the company cannot raise the required funds", "C) It replaces the need for shareholder approval", "D) Fair value is always equal to the book value of debt"],
        answer: "B"
      }
    ],
    formulaQs: [
      {
        q: "An irredeemable bond pays £8 annual interest. The market rate (Kd) is 6%. Calculate the fair value of the bond.",
        formula: "P₀ = I / Kd"
      },
      {
        q: "A redeemable bond has a 5% coupon (on £100 par), 3 years to maturity, and a required return (Kd) of 7%. Calculate the fair value. (Use discount factors: Year 1: 0.935, Year 2: 0.873, Year 3: 0.816)",
        formula: "P₀ = Σ [I / (1+Kd)ᵗ] + [RV / (1+Kd)ⁿ]"
      },
      {
        q: "A zero coupon bond has a par value of £100, matures in 5 years, and the required return (Kd) is 9%. Calculate the fair value.",
        formula: "P₀ = RV / (1 + Kd)ⁿ"
      },
      {
        q: "A redeemable bond has a 7% coupon (on £100 par) and 4 years to maturity. The market rate is 5%. Calculate the fair value. (Discount factors at 5%: Y1: 0.952, Y2: 0.907, Y3: 0.864, Y4: 0.823)",
        formula: "P₀ = Σ [I / (1+Kd)ᵗ] + [RV / (1+Kd)ⁿ]"
      },
      {
        q: "A convertible bond can be converted into 20 shares. At maturity (in 4 years), the share price is expected to be £5.50, and the cash redemption value is £100. Which option will a rational investor choose, and what value should be used in the bond valuation?",
        formula: "Conversion Value = Shares × Expected Share Price; Compare to RV; Use the higher value"
      },
      {
        q: "An irredeemable bond's market price is £92 and the annual coupon is £6. Calculate the required rate of return (Kd) implied by the market price.",
        formula: "Kd = I / P₀"
      },
      {
        q: "A bond currently priced at £95 has a 6% coupon (par £100) and 5 years to maturity. Determine whether it is a discount or premium bond and explain why.",
        formula: "Compare Coupon Rate to Market Rate; use P₀ = Σ [I / (1+Kd)ᵗ] + [RV / (1+Kd)ⁿ] to verify"
      }
    ]
  },
  {
    week: "Week 10",
    topic: "Cost of Capital (1) – Cost of Equity",
    mcqs: [
      {
        q: "The cost of capital from the company's perspective represents:",
        options: ["A) The maximum return it must earn", "B) The minimum return it must earn to satisfy its providers of finance", "C) The average profit margin of the industry", "D) The rate of inflation"],
        answer: "B"
      },
      {
        q: "Which source of finance has the highest cost and why?",
        options: ["A) Bank loans — because they are secured", "B) Bonds — because of the tax shield", "C) Ordinary equity — because shareholders bear the highest risk with a residual claim", "D) Preference shares — because dividends are tax-deductible"],
        answer: "C"
      },
      {
        q: "The Dividend Growth Model (DGM) formula for cost of equity is:",
        options: ["A) Ke = D₀ / P₀", "B) Ke = D₁ / P₀ + g", "C) Ke = (Rf + β) × Rm", "D) Ke = I / P₀ × (1 − t)"],
        answer: "B"
      },
      {
        q: "In Gordon's Growth Model, growth (g) is calculated as:",
        options: ["A) g = Ke − D₁/P₀", "B) g = r / b", "C) g = r × b (retention ratio × return on reinvested funds)", "D) g = P₀ / D₀"],
        answer: "C"
      },
      {
        q: "The CAPM formula is:",
        options: ["A) E(Ri) = Rf × β × (Rm − Rf)", "B) E(Ri) = Rf + β(Rm − Rf)", "C) E(Ri) = Rm − Rf + β", "D) E(Ri) = Rf − β(Rm − Rf)"],
        answer: "B"
      },
      {
        q: "A Beta (β) of 1.5 means the stock is:",
        options: ["A) 50% less volatile than the market", "B) Equally volatile as the market", "C) 50% more volatile than the market", "D) Not correlated with the market at all"],
        answer: "C"
      },
      {
        q: "Unsystematic risk can be eliminated by:",
        options: ["A) Buying government bonds", "B) Diversifying a portfolio across many different investments", "C) Using a fixed interest rate on debt", "D) Reducing dividend payments"],
        answer: "B"
      },
      {
        q: "The risk-free rate (Rf) in CAPM is typically represented by:",
        options: ["A) The return on blue-chip company shares", "B) The average market return", "C) The return on government bonds", "D) The central bank base rate of interest"],
        answer: "C"
      },
      {
        q: "The Market Risk Premium in CAPM is calculated as:",
        options: ["A) Rm × Rf", "B) Rm − Rf", "C) Rf + Rm", "D) β × Rf"],
        answer: "B"
      },
      {
        q: "A Dividend Valuation Model assuming no growth uses which formula?",
        options: ["A) Ke = D₁/P₀ + g", "B) Ke = P₀/D", "C) Ke = D/P₀", "D) Ke = g + Rf"],
        answer: "C"
      },
      {
        q: "CAPM compensates investors only for which type of risk?",
        options: ["A) Unsystematic (firm-specific) risk", "B) Total risk", "C) Systematic (market-wide) risk", "D) Liquidity risk"],
        answer: "C"
      },
      {
        q: "A utility company is likely to have a Beta value that is:",
        options: ["A) Greater than 1.0 — highly volatile", "B) Equal to 1.0 — matching the market exactly", "C) Less than 1.0 — defensive and less volatile than the market", "D) Negative — inversely correlated with the market"],
        answer: "C"
      },
      {
        q: "The retention ratio (b) in Gordon's Growth Model represents:",
        options: ["A) The proportion of earnings paid out as dividends", "B) The proportion of earnings retained in the business", "C) The return earned on all company assets", "D) The market value of shares"],
        answer: "B"
      },
      {
        q: "The DGM formula P₀ = D₀(1+g) / (Ke − g) assumes:",
        options: ["A) Dividends decline at a constant rate", "B) Dividends grow at a constant rate indefinitely", "C) No dividends are paid", "D) Dividends are paid only once"],
        answer: "B"
      },
      {
        q: "In CAPM, a Beta of 0 implies:",
        options: ["A) The stock moves opposite to the market", "B) The stock is twice as volatile as the market", "C) No systematic risk — equivalent to a risk-free asset", "D) The company has no debt"],
        answer: "C"
      }
    ],
    formulaQs: [
      {
        q: "A company pays a constant annual dividend of £0.50 per share. The current market price is £6.25. Calculate the cost of equity using the Dividend Valuation Model (no growth).",
        formula: "Ke = D / P₀"
      },
      {
        q: "A company just paid a dividend of £0.80 (D₀). Dividends are expected to grow at 4% per year. The current share price is £10.00. Calculate the cost of equity using the Dividend Growth Model.",
        formula: "Ke = D₁ / P₀ + g; where D₁ = D₀ × (1 + g)"
      },
      {
        q: "A company retains 35% of its earnings and earns a return of 12% on reinvested funds. Calculate the dividend growth rate using Gordon's Growth Model.",
        formula: "g = r × b"
      },
      {
        q: "The risk-free rate is 3%, the market return is 9%, and a company has a Beta of 1.4. Calculate the cost of equity using CAPM.",
        formula: "E(Ri) = Rf + β(Rm − Rf)"
      },
      {
        q: "A company has a Beta of 0.8, the risk-free rate is 2.5%, and the market risk premium is 6%. Calculate the expected return using CAPM.",
        formula: "E(Ri) = Rf + β × Market Risk Premium"
      },
      {
        q: "A firm retains 60% of profits and earns 15% on reinvested capital. The current dividend (D₀) is £1.20 and the share price is £18.00. Calculate the cost of equity using DGM.",
        formula: "g = r × b; Ke = D₁ / P₀ + g; D₁ = D₀ × (1 + g)"
      },
      {
        q: "A company's shares are priced at £5.00. The expected dividend next year (D₁) is £0.30, and dividends grow at 3% per year. Calculate the cost of equity and interpret what the result means for investment decisions.",
        formula: "Ke = D₁ / P₀ + g"
      }
    ]
  },
  {
    week: "Week 11",
    topic: "Cost of Capital (2) – Preference Shares & Debt",
    mcqs: [
      {
        q: "Unlike debt interest, preference share dividends are:",
        options: ["A) Tax-deductible for the company", "B) Not tax-deductible — paid from post-tax profits", "C) Exempt from all taxation", "D) Paid before debt interest in the creditor hierarchy"],
        answer: "B"
      },
      {
        q: "The cost of irredeemable preference shares is calculated as:",
        options: ["A) Kps = Dps × P₀", "B) Kps = Dps / P₀", "C) Kps = P₀ / Dps", "D) Kps = Dps × (1 − t)"],
        answer: "B"
      },
      {
        q: "A £0.80 preference dividend is paid on shares currently priced at £8.00. What is the cost of these irredeemable preference shares?",
        options: ["A) 6.4%", "B) 8%", "C) 10%", "D) 12%"],
        answer: "C"
      },
      {
        q: "The tax shield on debt means that debt is cheaper because:",
        options: ["A) Debt holders accept lower returns than shareholders", "B) Interest payments reduce taxable profit, effectively reducing the government's share of financing costs", "C) Debt is always secured against assets", "D) Debt holders have voting rights"],
        answer: "B"
      },
      {
        q: "The after-tax cost of irredeemable debt is calculated as:",
        options: ["A) Kd = I / P₀", "B) Kd = I × (1 − t)", "C) Kd = (I / P₀) × (1 − t)", "D) Kd = I + t / P₀"],
        answer: "C"
      },
      {
        q: "If a bond pays £7.50 interest, is priced at £105, and the corporate tax rate is 20%, the after-tax cost of debt is:",
        options: ["A) 7.14%", "B) 5.71%", "C) 6.00%", "D) 4.80%"],
        answer: "B"
      },
      {
        q: "For redeemable bonds, the cost of debt approximation formula accounts for:",
        options: ["A) Dividend yield only", "B) Annual interest only", "C) Annual interest payments AND any capital gain or loss at redemption", "D) Tax rate only"],
        answer: "C"
      },
      {
        q: "A bank loan's cost of debt is simply calculated as:",
        options: ["A) i / (1 − t)", "B) i × (1 − t)", "C) i + t", "D) i × t"],
        answer: "B"
      },
      {
        q: "A 7% bank loan with a 25% tax rate has an after-tax cost of:",
        options: ["A) 7%", "B) 5.25%", "C) 9.33%", "D) 4.75%"],
        answer: "B"
      },
      {
        q: "Redeemable preference shares differ from irredeemable ones because:",
        options: ["A) They pay a variable dividend", "B) The company must repurchase them at a specific price on a specific date", "C) They are traded on the stock market", "D) Their dividends are tax-deductible"],
        answer: "B"
      },
      {
        q: "If a redeemable bond is currently trading at a premium to par, the company will experience what at redemption?",
        options: ["A) An additional cost — paying par but bond was worth more", "B) A gain — redeeming for par which is less than current market value", "C) No difference — par value equals market value always", "D) A loss equal to the coupon payment"],
        answer: "B"
      },
      {
        q: "Why do simplified cost of capital models ignore flotation costs?",
        options: ["A) Flotation costs are illegal in the UK", "B) They are irrelevant to financial decisions", "C) To help master the underlying theory; practical models must include them", "D) Flotation costs only apply to equity, not debt"],
        answer: "C"
      },
      {
        q: "Which model is used to estimate the cost of equity when dividends grow at a constant rate?",
        options: ["A) CAPM", "B) Irredeemable bond formula", "C) Dividend Growth Model (DGM)", "D) Redeemable preference share approximation"],
        answer: "C"
      },
      {
        q: "The WACC (Weighted Average Cost of Capital) combines which individual costs?",
        options: ["A) Only equity and preference shares", "B) Only debt and bank loans", "C) Equity, preference shares, and all forms of debt — weighted by market value", "D) Historical book values of all liabilities"],
        answer: "C"
      },
      {
        q: "The after-tax cost of debt is always lower than the pre-tax cost because:",
        options: ["A) Debt holders accept lower rates during recessions", "B) The tax deductibility of interest reduces the effective cost to the company", "C) Debt is repaid from pre-tax profits", "D) Market prices of bonds always exceed par value"],
        answer: "B"
      }
    ],
    formulaQs: [
      {
        q: "Irredeemable preference shares pay an annual dividend of £0.60 and are currently priced at £7.50. Calculate the cost of preference shares.",
        formula: "Kps = Dps / P₀"
      },
      {
        q: "A 7.5% irredeemable bond is currently priced at £106. The corporate tax rate is 20%. Calculate the after-tax cost of debt.",
        formula: "Kd = (I / P₀) × (1 − t)"
      },
      {
        q: "A redeemable bond has a 7.5% coupon (par £100), current market price of £106, matures in 5 years, and the tax rate is 20%. Calculate the approximate after-tax cost of debt.",
        formula: "Kd = [(I + (RV − P₀)/n) / ((RV + P₀)/2)] × (1 − t)"
      },
      {
        q: "A company has a 7% bank loan. The corporate tax rate is 25%. Calculate the after-tax cost of the bank loan.",
        formula: "Kd = i × (1 − t)"
      },
      {
        q: "Redeemable preference shares have a £0.50 annual dividend, are currently priced at £4.80, and will be redeemed at £5.00 in 4 years. Calculate the approximate cost.",
        formula: "Kps = [Dps + (RV − P₀)/n] / [(RV + P₀)/2]"
      },
      {
        q: "A company's capital structure is: Equity (market value £600,000, Ke = 12%), Preference Shares (£100,000, Kps = 8%), Debt (£300,000, Kd after-tax = 4.5%). Calculate the WACC.",
        formula: "WACC = (Ke × We) + (Kps × Wps) + (Kd × Wd); where W = market value weight"
      },
      {
        q: "A 9% irredeemable bond is priced at £120. Tax rate is 30%. Calculate the after-tax cost and explain why the cost differs from the nominal 9% coupon rate.",
        formula: "Kd = (I / P₀) × (1 − t)"
      }
    ]
  }
];

export default function RevisionApp() {
  const [activeWeek, setActiveWeek] = useState(0);
  const [activeTab, setActiveTab] = useState("mcq");
  const [selectedAnswers, setSelectedAnswers] = useState({});
  const [revealed, setRevealed] = useState({});
  const [score, setScore] = useState(null);
  const [submitted, setSubmitted] = useState(false);

  const week = revisionData[activeWeek];

  const handleSelect = (qIdx, option) => {
    if (submitted) return;
    setSelectedAnswers(prev => ({ ...prev, [`${activeWeek}-${qIdx}`]: option[0] }));
  };

  const handleSubmit = () => {
    let correct = 0;
    week.mcqs.forEach((q, i) => {
      if (selectedAnswers[`${activeWeek}-${i}`] === q.answer) correct++;
    });
    setScore(correct);
    setSubmitted(true);
  };

  const handleReset = () => {
    setSelectedAnswers(prev => {
      const next = { ...prev };
      week.mcqs.forEach((_, i) => delete next[`${activeWeek}-${i}`]);
      return next;
    });
    setScore(null);
    setSubmitted(false);
  };

  const handleWeekChange = (idx) => {
    setActiveWeek(idx);
    setActiveTab("mcq");
    setScore(null);
    setSubmitted(false);
  };

  const toggleReveal = (idx) => {
    setRevealed(prev => ({ ...prev, [`${activeWeek}-${idx}`]: !prev[`${activeWeek}-${idx}`] }));
  };

  return (
    <div style={{
      minHeight: "100vh",
      background: "#0a0a0f",
      fontFamily: "'Georgia', serif",
      color: "#e8e0d0"
    }}>
      {/* Header */}
      <div style={{
        background: "linear-gradient(135deg, #1a1a2e 0%, #16213e 50%, #0f3460 100%)",
        borderBottom: "2px solid #c9a84c",
        padding: "24px 32px",
        position: "sticky",
        top: 0,
        zIndex: 100,
        boxShadow: "0 4px 24px rgba(0,0,0,0.5)"
      }}>
        <div style={{ maxWidth: 1100, margin: "0 auto" }}>
          <div style={{ fontSize: 11, letterSpacing: 4, color: "#c9a84c", textTransform: "uppercase", marginBottom: 4 }}>
            ACCF5003 · Financial Management
          </div>
          <div style={{ fontSize: 22, fontWeight: "bold", color: "#f5f0e8", letterSpacing: 1 }}>
            Term 1 Exam Revision — May 5th
          </div>
          <div style={{ fontSize: 13, color: "#8a9bb5", marginTop: 4 }}>
            {revisionData.length} topics · 135 MCQs · 63 Formula Questions
          </div>
        </div>
      </div>

      <div style={{ maxWidth: 1100, margin: "0 auto", padding: "24px 16px", display: "flex", gap: 24 }}>
        {/* Sidebar */}
        <div style={{ width: 220, flexShrink: 0 }}>
          <div style={{
            background: "#111118",
            border: "1px solid #2a2a3e",
            borderRadius: 12,
            overflow: "hidden",
            position: "sticky",
            top: 100
          }}>
            <div style={{ padding: "14px 16px", borderBottom: "1px solid #2a2a3e", fontSize: 11, letterSpacing: 3, color: "#c9a84c", textTransform: "uppercase" }}>
              Topics
            </div>
            {revisionData.map((w, idx) => (
              <button
                key={idx}
                onClick={() => handleWeekChange(idx)}
                style={{
                  display: "block",
                  width: "100%",
                  textAlign: "left",
                  padding: "12px 16px",
                  background: activeWeek === idx ? "rgba(201,168,76,0.12)" : "transparent",
                  border: "none",
                  borderLeft: activeWeek === idx ? "3px solid #c9a84c" : "3px solid transparent",
                  borderBottom: "1px solid #1e1e2e",
                  color: activeWeek === idx ? "#c9a84c" : "#9090a8",
                  cursor: "pointer",
                  fontSize: 12,
                  lineHeight: 1.4,
                  transition: "all 0.2s"
                }}
              >
                <div style={{ fontWeight: "bold", marginBottom: 2 }}>{w.week}</div>
                <div style={{ fontSize: 11, opacity: 0.8 }}>{w.topic}</div>
              </button>
            ))}
          </div>
        </div>

        {/* Main content */}
        <div style={{ flex: 1, minWidth: 0 }}>
          {/* Week header */}
          <div style={{
            background: "linear-gradient(135deg, #16213e, #1a1a2e)",
            border: "1px solid #2a3a5e",
            borderRadius: 12,
            padding: "20px 24px",
            marginBottom: 20
          }}>
            <div style={{ fontSize: 11, color: "#c9a84c", letterSpacing: 3, textTransform: "uppercase", marginBottom: 6 }}>
              {week.week}
            </div>
            <div style={{ fontSize: 20, fontWeight: "bold", color: "#f0ead8" }}>{week.topic}</div>
          </div>

          {/* Tabs */}
          <div style={{ display: "flex", gap: 8, marginBottom: 20 }}>
            {[
              { id: "mcq", label: `MCQs (${week.mcqs.length})` },
              { id: "formula", label: `Formula Questions (${week.formulaQs.length})` }
            ].map(tab => (
              <button
                key={tab.id}
                onClick={() => { setActiveTab(tab.id); setScore(null); setSubmitted(false); }}
                style={{
                  padding: "10px 22px",
                  background: activeTab === tab.id ? "#c9a84c" : "#111118",
                  border: `1px solid ${activeTab === tab.id ? "#c9a84c" : "#2a2a3e"}`,
                  borderRadius: 8,
                  color: activeTab === tab.id ? "#0a0a0f" : "#8a8aaa",
                  cursor: "pointer",
                  fontSize: 13,
                  fontWeight: activeTab === tab.id ? "bold" : "normal",
                  fontFamily: "Georgia, serif",
                  transition: "all 0.2s"
                }}
              >
                {tab.label}
              </button>
            ))}
          </div>

          {/* MCQ Section */}
          {activeTab === "mcq" && (
            <div>
              {week.mcqs.map((q, qIdx) => {
                const key = `${activeWeek}-${qIdx}`;
                const selected = selectedAnswers[key];
                const isCorrect = submitted && selected === q.answer;
                const isWrong = submitted && selected && selected !== q.answer;

                return (
                  <div key={qIdx} style={{
                    background: "#111118",
                    border: `1px solid ${isCorrect ? "#4a9a6a" : isWrong ? "#9a4a4a" : "#2a2a3e"}`,
                    borderRadius: 10,
                    padding: "18px 20px",
                    marginBottom: 14,
                    transition: "border-color 0.3s"
                  }}>
                    <div style={{ display: "flex", gap: 12, marginBottom: 14 }}>
                      <span style={{
                        background: "#1e1e30",
                        color: "#c9a84c",
                        borderRadius: 6,
                        padding: "2px 10px",
                        fontSize: 12,
                        fontWeight: "bold",
                        flexShrink: 0
                      }}>
                        Q{qIdx + 1}
                      </span>
                      <span style={{ fontSize: 14, lineHeight: 1.6, color: "#d8d0c0" }}>{q.q}</span>
                    </div>
                    <div style={{ display: "flex", flexDirection: "column", gap: 8 }}>
                      {q.options.map((opt, oIdx) => {
                        const optLetter = opt[0];
                        const isSelected = selected === optLetter;
                        const isAnswer = q.answer === optLetter;
                        let bg = "#0e0e1a";
                        let border = "#2a2a3e";
                        let color = "#9090a8";
                        if (isSelected && !submitted) { bg = "#1e1e35"; border = "#c9a84c"; color = "#f0e8d0"; }
                        if (submitted && isAnswer) { bg = "#0d2a1a"; border = "#4a9a6a"; color = "#7dd0a0"; }
                        if (submitted && isSelected && !isAnswer) { bg = "#2a0d0d"; border = "#9a4a4a"; color = "#d07070"; }

                        return (
                          <button
                            key={oIdx}
                            onClick={() => handleSelect(qIdx, opt)}
                            style={{
                              textAlign: "left",
                              padding: "10px 14px",
                              background: bg,
                              border: `1px solid ${border}`,
                              borderRadius: 7,
                              color,
                              cursor: submitted ? "default" : "pointer",
                              fontSize: 13,
                              fontFamily: "Georgia, serif",
                              lineHeight: 1.4,
                              transition: "all 0.15s"
                            }}
                          >
                            {opt}
                          </button>
                        );
                      })}
                    </div>
                    {submitted && isWrong && (
                      <div style={{ marginTop: 10, fontSize: 12, color: "#7dd0a0", background: "#0d2a1a", padding: "8px 12px", borderRadius: 6 }}>
                        ✓ Correct answer: <strong>{q.answer}</strong>
                      </div>
                    )}
                  </div>
                );
              })}

              {/* Submit / Reset */}
              <div style={{ marginTop: 20, display: "flex", gap: 12, alignItems: "center" }}>
                {!submitted ? (
                  <button onClick={handleSubmit} style={{
                    padding: "12px 32px",
                    background: "#c9a84c",
                    border: "none",
                    borderRadius: 8,
                    color: "#0a0a0f",
                    fontSize: 14,
                    fontWeight: "bold",
                    fontFamily: "Georgia, serif",
                    cursor: "pointer"
                  }}>
                    Submit Answers
                  </button>
                ) : (
                  <>
                    <div style={{
                      padding: "12px 24px",
                      background: score >= 12 ? "#0d2a1a" : score >= 8 ? "#1a1a0d" : "#2a0d0d",
                      border: `1px solid ${score >= 12 ? "#4a9a6a" : score >= 8 ? "#9a9a4a" : "#9a4a4a"}`,
                      borderRadius: 8,
                      fontSize: 14,
                      fontWeight: "bold",
                      color: score >= 12 ? "#7dd0a0" : score >= 8 ? "#d0d07d" : "#d07070"
                    }}>
                      Score: {score} / {week.mcqs.length} {score >= 12 ? "🎉" : score >= 8 ? "📚" : "💪"}
                    </div>
                    <button onClick={handleReset} style={{
                      padding: "12px 24px",
                      background: "#1e1e2e",
                      border: "1px solid #3a3a5e",
                      borderRadius: 8,
                      color: "#9090c0",
                      fontSize: 14,
                      fontFamily: "Georgia, serif",
                      cursor: "pointer"
                    }}>
                      Try Again
                    </button>
                  </>
                )}
              </div>
            </div>
          )}

          {/* Formula Questions Section */}
          {activeTab === "formula" && (
            <div>
              <div style={{
                background: "#0d1a2e",
                border: "1px solid #1e3a5e",
                borderRadius: 10,
                padding: "14px 18px",
                marginBottom: 20,
                fontSize: 13,
                color: "#7090b8",
                lineHeight: 1.6
              }}>
                📐 <strong style={{ color: "#c9a84c" }}>How to use:</strong> Read each question carefully, write out your working on paper using the formula provided, then click <em>"Show Formula Reminder"</em> if you need a hint. When you're ready, ask for the answers separately.
              </div>

              {week.formulaQs.map((fq, idx) => (
                <div key={idx} style={{
                  background: "#111118",
                  border: "1px solid #2a2a3e",
                  borderRadius: 10,
                  padding: "20px 22px",
                  marginBottom: 16
                }}>
                  <div style={{ display: "flex", gap: 12, marginBottom: 14 }}>
                    <span style={{
                      background: "#1e1e30",
                      color: "#c9a84c",
                      borderRadius: 6,
                      padding: "2px 10px",
                      fontSize: 12,
                      fontWeight: "bold",
                      flexShrink: 0,
                      height: "fit-content"
                    }}>
                      Q{idx + 1}
                    </span>
                    <span style={{ fontSize: 14, lineHeight: 1.7, color: "#d8d0c0" }}>{fq.q}</span>
                  </div>

                  <button
                    onClick={() => toggleReveal(idx)}
                    style={{
                      padding: "8px 16px",
                      background: revealed[`${activeWeek}-${idx}`] ? "#0d2a1a" : "#1a1a0d",
                      border: `1px solid ${revealed[`${activeWeek}-${idx}`] ? "#4a9a6a" : "#4a4a1a"}`,
                      borderRadius: 6,
                      color: revealed[`${activeWeek}-${idx}`] ? "#7dd0a0" : "#c0c07a",
                      cursor: "pointer",
                      fontSize: 12,
                      fontFamily: "Georgia, serif",
                      transition: "all 0.2s"
                    }}
                  >
                    {revealed[`${activeWeek}-${idx}`] ? "▼ Formula:" : "▶ Show Formula Reminder"}
                  </button>

                  {revealed[`${activeWeek}-${idx}`] && (
                    <div style={{
                      marginTop: 10,
                      padding: "12px 16px",
                      background: "#0d1a0d",
                      border: "1px solid #2a4a2a",
                      borderRadius: 7,
                      fontFamily: "monospace",
                      fontSize: 13,
                      color: "#90d090",
                      lineHeight: 1.6
                    }}>
                      {fq.formula}
                    </div>
                  )}
                </div>
              ))}
            </div>
          )}
        </div>
      </div>
    </div>
  );
}
Editor is loading...
Leave a Comment