First, correct the mistake:

this is a practice, the bold sentences are wrong, beneath them are my answers.

"if I knew about it yesterday, I would have told you."

-> I don't know whats wrong here... the past perfect could not be used with "yesterday"

"if the teacher would have announced the test in time, the pupils would have been prepared."

-> "if the teacher had announced the test in time, the pupils could be prepared"

"if he would have more time, he could finish."

-> "if he had more time, he could have finished."

second, I don't understand what the difference between the if 2 and if 3

I am not proficient in the if conditionals, please help!
1. If I had known about it yesterday, I would have told you. (you can use specific time words with the Past Perfect)

2. If the teacher had announced the test in time, the pupils would have been prepared.

3a) If he had more time, he could/would finish it.

3b) If he had had more time, he could/would have finished it.

[ If……. ]

Verb in simple present tense

No“will” or “be going to”

Verb in simple present tense (truth)



It doesn’t matter whether the condition happens or not.

Whenever the condition happens

The result happens 100% of the time.





[ If ……]

Verb in present tense

[ will ] or [ be going to ]

Verb in original form (probability)



It is possible that the condition is going to happen.

Condition happens

The result probably will happen.


If 2 form:

[ If ……]

Verb in past tense

[ would ]

Verb in original form



It is impossible that the condition is going to happen.


Condition happens (not likely)

The result probably will happen.


If 3 form:


[ If ……]

Verb in past perfect tense

[ would + have + Verbpp ]



The condition didn’t happen.


It was possible that the result could happen, but it didn’t happen because the condition didn’t happen.
Teachers: We supply a list of EFL job vacancies
Picnic"if I knew about it yesterday, I would have told you."
-> I don't know whats wrong here... the past perfect could not be used with "yesterday"
You can use the past perfect with yesterday.

If I had known about it yesterday, I would have told you. (Type 3)

Picnic"if the teacher would have announced the test in time, the pupils would have been prepared."
-> "if the teacher had announced the test in time, the pupils could be prepared"
If the teacher had announced the test in time, the pupils would have been prepared. (3)

Picnic"if he would have more time, he could finish."
-> "if he had more time, he could have finished."
If he had more time, he could finish. (2)

Picnicdifference between the if 2 and if 3
2: IF ... past , ... WOULD base-form

3: IF ... HAD past-participle-form , ... WOULD HAVE past-participle-form

2 If I had a hammer, I would fix the chair.

3 If I had had a hammer, I would have fixed the chair.

(Note how the one word 'had' fills three different roles in the two conditional patterns above:

as a past tense, as a required auxiliary element in forming the past perfect, and as a past participle.)

________________

COULD can substitute for WOULD.

could ~ would be able to

could have ~ would have been able to

2 If we bought some eggs, we could make an omelet.

3 If we had bought some eggs, we could have made an omelet.

_________________

WERE very frequently substitutes for WAS as the 'past' in these patterns:

2 If she were in town, we would take her to dinner.

3 If she had been in town, we would have taken her to dinner.

CJ
Thank you this is a very good explanation!

thanks to the others too, but I had wanted an explantion.