{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "## Vizsgaminta 1." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 1. feladat [6p]\n", "\n", "Készítsünk programot, amely bekér a felhasználótól két sztringet, majd kiírja a bennük található leghosszabb közös részsztringet! Példa futási eredmény:\n", "```\n", "1. sztring: András\n", "2. sztring: Bandi\n", "A leghosszabb közös rész: nd\n", "```" ] }, { "cell_type": "code", "execution_count": 57, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "4\n", "alma\n" ] } ], "source": [ "a = \"Andrásalmaka\"\n", "b = \"Balmaandika\"\n", "max_len = 0\n", "maxtext = \"\"\n", "\n", "for ia in range(len(a)):\n", " for ib in range(len(b)):\n", " if a[ia] == b[ib]:\n", " counter = 0\n", " for iii in range(min(len(a) - ia, len(b) - ib)):\n", " if b[ib + iii] != a[ia + iii]:\n", " break\n", " counter += 1\n", " if max_len < counter:\n", " max_len = counter\n", " maxtext = a[ia:ia + max_len]\n", "\n", "print(max_len)\n", "print(maxtext)\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 2. feladat [6p]\n", "\n", "A `birthdays` lista kitalált személyek nevét és születési dátumát tartalmazza. Készítsünk programot, amely megkeresi, hogy kik állnak életkorban egymáshoz a legközelebb, és hány nap köztük a különbség! A program ne csak a megadott `birthdays` listára működjön, hanem tetszőleges, ugyanilyen formátumú bemenetre is! Feltehetjük, hogy minden név különböző, és legalább két név meg van adva." ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "birthdays = [\n", " ('Kovács Andor', '1999-10-29'),\n", " ('Kiss Martina', '2000-02-13'),\n", " ('Horváth Barna', '1999-12-05'),\n", " ('Győri Eszter', '2000-10-29'),\n", " ('Nagy Tivadar', '1999-08-16'),\n", " ('Tóth Tamara', '2000-01-30'),\n", " ('Szakács Sándor', '1999-09-02')\n", "]" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Elvárt futási eredmény:\n", "```\n", "Életkorban legközelebb állók: Kiss Martina, Tóth Tamara\n", "14 nap köztük a különbség\n", "```" ] }, { "cell_type": "code", "execution_count": 97, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Életkorban legközelebb állók: Kiss Martina, Tóth Tamara 14 nap köztük a különbség\n" ] } ], "source": [ "from datetime import date\n", "\n", "def todate(s):\n", " year = int(s[0:4])\n", " month = int(s[5:7])\n", " day = int(s[8:10])\n", " return date(year, month, day)\n", "\n", "min = abs(todate(birthdays[0][1]) - todate(birthdays[1][1]))\n", "for i in range(len(birthdays)):\n", " a = todate(birthdays[i][1])\n", " for ii in range(i+1, len(birthdays)):\n", " b = todate(birthdays[ii][1])\n", " if min > abs(a-b):\n", " min = abs(a-b)\n", " dat1 = birthdays[i]\n", " dat2 = birthdays[ii]\n", "\n", "print(f\"Életkorban legközelebb állók: {dat1[0]}, {dat2[0]} {min.days} nap köztük a különbség\")\n", "\n", " \n", "\n", " " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 3. feladat [8p]\n", "\n", "Az [investments.txt](investments.txt) szövegfájl amerikai cégekbe történő befektetésekről tartalmaz adatokat (a TechCrunch hírportál alapján). Készítsünk programot, amely kiszámítja és kiírja az alábbi statisztikákat:\n", "- Hány befektetés történt összesen?\n", "- Melyik cég(ek)be fektették be a legtöbbször és hányszor?\n", "- Cégkategóriánként hány dollárt fektettek be összesen?" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.12.6" } }, "nbformat": 4, "nbformat_minor": 1 }