Kompilator tekstowy

0

Witam, jestem praktycznie zielony w programowaniu. Dostałem zadanie, żeby napisać w języku c, program, który będzie wystawiał przecinki i kropki do tekstu. Kropki ma wstawiać przed każdą dużo litera i żeby uniknąć pomyłki gdy będzie to nazwa własna, ma zapytać użytkownika czy wstawić w tym miejscu kropkę. Nie wiem nawet jak się do tego zabrać :/

0

Niestety nie. I zapomniałem dodać, że to ma działac w języku angielskim, a nie polskim

0

Dokładnie o to, tylko do tego ma wstawiać przecinki już nie pytajac

0

Według interpunkcji w języku angielskim

0

A gdyby miało wstawiać tylko kropki, to mógłbyś mi jakoś pomóc?

0

Ale syf w tym temacie. Skad nagle takie zadanie? Co studiujesz? I dlaczego akurat w C?
To zadanie nie moze byc tak skomplikowane jak piszesz. Podejrzewam, ze musisz pytac czy w danym miejscu wstawiac kropke. Przed imionami nie estawisz kropki wiec:

  • Zrobisz np. tablice z imionami i jezeli imie z tablicy wystapi w tekscie to nie wstawisz tam kropki

Co do przecinkow zawsze mozna przyjac jakas zasade ich umieszczania i zastosowac to w praktyce. Moze nie bedzie to najlepsze rozwiazanie ale zawsze jakies:

Skad masz brac ten tekst? Wczytujesz z pliku czy ma byc hardkodowany w zrodle?

Co robiles do tej pory, ze nagle dostales takie zadanie?

0

Studiuję automatykę, nie miałem wcześniej styczności z programowaniem. Jak na razie piszemy tylko w c. Jest to mój projekt semestralny. Na zajęciach mieliśmy jak na razie same podstawy tzn. Jakieś funkcje, listy, wczytywanie z pliku.
Tekst ma być wczytywany z pliku. Raczej nie da rady z tą listą, jest jeszcze dużo więcej nazw własnych i za każdym razem powinien pytać czy wstawić kropkę w tym miejscu

0

Wiec masz pelen zestaw za soba do napisania tego jak najprosciej.
Wczytuj tekst z pliku -> czytaj znak po znaku -> jezeli wielka litera (pytaj czy wstawic kropke za kazdym razem) -> jezeli TAK wstaw kropke i czytaj dalej -> jezeli NIE -> czytaj dalej.
Co do przecinkow przyjmij pewne zasady, ktore da sie przyjac na pewno. W innych wypadkach rowniez pytaj.
Jezeli sam masz dobrac tekst to mozesz kombinowac zeby napisac kod pod ten tekst :P
Moze zadanie jest takie zeby dac wam do myslenia, ze nie da sie wszystkiego zaimplementowac (jak widac nie dalo do myslenia) bez zaawansowanej analizy tekstu. P

Jest biblioteka do tego w C++ ale skoro nie ogarniasz podstaw programowania to nawet nie ma co.
Generalnie dostales jeden z wiekszych problemow, ktorego samym jezykiem powyzej pewnego progu nie przeskoczysz.

0

Dzięki za pomoc

2

Kropki jeszcze jesteś w stanie ogarnąć, przecinków się nie da, a przynajmniej nie jeśli nie znasz intencji autora. Przykład

Woman without her man is nothing.

Masz 2 możliwości wstawienia przecinków w taki sposób, że zdanie dalej będzie w 100% poprawne, ale znaczenie będzie absolutnie różne:

  • Woman, without her, man is nothing.
  • Woman, without her man, is nothing.

Z przecinkami akurat chyba łatwiej byłoby w języku polskim, bo mamy określone frazy, przed którymi się ten znak stawia, w ang. masz zdecydowanie większą swobodę, nie mówiąc już o Oxford comma

iu-2.png

0

Zrób mapę lub listę.

struct name
{
    char * nameString;
    bool ownName;
    name * next;
};

Jeżeli kolejne słowo zaczyna się z wielkiej litery:
....Jeżeli nie występuje na liście:
........Zapytaj użytkownika i dopisz do listy.
....Dodaj kropkę w zależności od wartości ownName.

0

Nauczyciela chyba trochę poniosło z przecinkami, zrobię tylko te kropki

0

Z tym zapytaniem to tylko o kropkach mowil

3

Dał wam po prostu zadanie, które wykonacie częściowo. Ale wy tego nie wiecie więc liczy na to, że będziecie nad tym myśleć - na tym polega praca programisty. Na koniec oddasz i powiesz, że nie zrobiłeś przecinków ponieważ (...) wymienisz mu wszstkie problemy, które napotkałeś i które uniemożliwiły realizację tego problemu. Zapewne na tym polega cała zabawa.
Ja też z dwoma kolegami zabrałem się na studiach za sieć neuronową do rozpoznawania liter. Każdy miał dostać po jednej konkretnej literze małej i dużej (pismo odręczne), a my się porwaliśmy na cały alfabet. Oczywiście projektu nie dotargaliśmy z wielu powodów ale koniec końców 5 było za umiejętność wskazania problemów, ciekawe podejścia do tematu i kilka innych rzeczy + za porwanie się na cały alfabet :-)

0

@Kukulutek: ja bym napisał maila do wykładowcy z dodatkowym wyjaśnieniem. Opisz mu jak ty to rozumiesz i jaki masz pomysł na rozwiązanie. Powinien ci odpisać czy ma być tak, jeśli nie, to pewnie ci da wskazówki

1 użytkowników online, w tym zalogowanych: 0, gości: 1