...
This commit is contained in:
commit
e9bbac8249
42
Makefile
Normal file
42
Makefile
Normal file
@ -0,0 +1,42 @@
|
|||||||
|
TARGET = $(notdir $(CURDIR))
|
||||||
|
|
||||||
|
SRCEXT = .c
|
||||||
|
INCEXT = .h
|
||||||
|
OBJEXT = .o
|
||||||
|
|
||||||
|
SRCDIR = .
|
||||||
|
INCDIR = .
|
||||||
|
OBJDIR = .
|
||||||
|
|
||||||
|
CC = gcc
|
||||||
|
LD = gcc
|
||||||
|
|
||||||
|
LDFLAGS = -lm -lpthread
|
||||||
|
CCFLAGS = -std=gnu99 -g -ggdb -Og -Wall -Wextra -pedantic
|
||||||
|
|
||||||
|
SRCTREE = $(shell find $(SRCDIR) -type d)
|
||||||
|
INCS = $(shell find $(INCDIR) -type f -name '*$(INCEXT)')
|
||||||
|
SRCS = $(shell find $(SRCDIR) -type f -name '*$(SRCEXT)')
|
||||||
|
OBJTREE = $(foreach D,$(SRCTREE),$(shell echo $(D) | sed 's/$(SRCDIR)/$(OBJDIR)/'))
|
||||||
|
OBJSTMP = $(foreach F,$(SRCS),$(shell echo $(F) | sed -e 's/$(SRCDIR)/$(OBJDIR)/'))
|
||||||
|
OBJS = $(foreach O,$(OBJSTMP),$(shell echo $(O) | sed -e 's/\$(SRCEXT)/\$(OBJEXT)/'))
|
||||||
|
|
||||||
|
all: $(TARGET)
|
||||||
|
@echo Done.
|
||||||
|
|
||||||
|
run: $(TARGET)
|
||||||
|
@./$(TARGET)
|
||||||
|
|
||||||
|
clean:
|
||||||
|
@rm -r $(TARGET) $(OBJS) $(OBJDIR) 2>/dev/null || true
|
||||||
|
|
||||||
|
$(TARGET): $(OBJS) | $(OBJDIR)
|
||||||
|
@$(LD) $(LDFLAGS) -L$(OBJDIR) -o $@ $^
|
||||||
|
|
||||||
|
$(OBJS): $(OBJDIR)/%$(OBJEXT) : $(SRCDIR)/%$(SRCEXT) | $(OBJDIR)
|
||||||
|
@$(CC) $(CCFLAGS) -I$(INCDIR) -c -o $@ $?
|
||||||
|
|
||||||
|
$(OBJDIR):
|
||||||
|
@mkdir -p $(OBJDIR) $(OBJTREE)
|
||||||
|
|
||||||
|
.PHONY: all run clean
|
98
main.c
Normal file
98
main.c
Normal file
@ -0,0 +1,98 @@
|
|||||||
|
/*
|
||||||
|
* Kolokwium: Algorytmy i Struktury Danych
|
||||||
|
*
|
||||||
|
* Zadanie: Pudełeczka
|
||||||
|
*
|
||||||
|
* Autor: Artur Tamborski
|
||||||
|
* Numer Indeksu: 449376
|
||||||
|
* Numer Grupy: 7
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <stdio.h>
|
||||||
|
|
||||||
|
int main(void)
|
||||||
|
{
|
||||||
|
/* zmienne chwilowe, tylko dla pętli */
|
||||||
|
int i, j;
|
||||||
|
|
||||||
|
/* zmienne wejściowe */
|
||||||
|
int num_pudelka;
|
||||||
|
int num_pytania;
|
||||||
|
int lewe, prawe;
|
||||||
|
int liczba_skarbow;
|
||||||
|
int pudelka[1000];
|
||||||
|
|
||||||
|
/* liczba pudełek */
|
||||||
|
scanf("%d", &num_pudelka);
|
||||||
|
|
||||||
|
/* sprawdzanie wartości */
|
||||||
|
if (num_pudelka < 1)
|
||||||
|
{
|
||||||
|
puts("Za mało pudełek!");
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (num_pudelka > 1000)
|
||||||
|
{
|
||||||
|
puts("Za dużo pudełek!");
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* ile skarbów jest w danym pudełku */
|
||||||
|
for (i = 0; i < num_pudelka; i++)
|
||||||
|
scanf("%d", &pudelka[i]);
|
||||||
|
|
||||||
|
/* liczba pytań Zosi */
|
||||||
|
scanf("%d", &num_pytania);
|
||||||
|
|
||||||
|
/* sprawdzanie wartości */
|
||||||
|
if (num_pytania < 1)
|
||||||
|
{
|
||||||
|
puts("Za mało pytań!");
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (num_pytania > 1000)
|
||||||
|
{
|
||||||
|
puts("Za dużo pytań!");
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Zosia wskazuje pudelka */
|
||||||
|
/* a my jednoczesnie odpowiadamy */
|
||||||
|
for (i = 0; i < num_pytania; i++)
|
||||||
|
{
|
||||||
|
/* zeruję bo z każdym wskazaniem ta wartość jest inna */
|
||||||
|
liczba_skarbow = 0;
|
||||||
|
|
||||||
|
/* wczytaj wskazanie Zosi */
|
||||||
|
scanf("%d %d", &lewe, &prawe);
|
||||||
|
|
||||||
|
/* sprawdzanie wartości */
|
||||||
|
if (lewe < 1)
|
||||||
|
{
|
||||||
|
puts("pierwsze wskazanie jest za małe!");
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (lewe > prawe)
|
||||||
|
{
|
||||||
|
puts("wskazanie jest niepoprawne!");
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (prawe > num_pudelka)
|
||||||
|
{
|
||||||
|
puts("drugie wskazanie jest za duże!");
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* - 1 bo zosia wskazuje indekując od jeden a
|
||||||
|
* tablice są indeksowane od zera */
|
||||||
|
for (j = lewe - 1; j <= prawe - 1; j++)
|
||||||
|
liczba_skarbow += pudelka[j];
|
||||||
|
|
||||||
|
/* wyjście */
|
||||||
|
printf("%d\n", liczba_skarbow);
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user